“ 如果你想通过数据结构导论这门课,至少得看两遍书吧?”
第一遍就是粗略的看一下,这样你心里也就有了底,也就大概的了解了数据结构导论这门课所讲的内容,并且那里是考点在头脑里也就都有了大致的把握,这样,你就可以带着相应的重点,去重点
把握你觉得重要的东西了!不过其实你到现在如果连一遍也没看过呢,也没关系,我下面的总结就是希望能对这些还没看过书的人,有所帮助!
下面就列出一些我觉得是重点的东西:1 ,线性表,这一章整个都比较重要,因为这一章中关于线性表的顺序实现和链接实现及在上
面的基本运算,在最后考试中很有可能以多种形式的考法出现(如:选择,填空,应用及程序设计等)。并且由于这一章是整本书的基础,所以考试时占的比重会比较大,最后的程序设计题很可能就从这一章
里出一道甚至两道都从这章里出(一道程序设计题6 分)。 年试卷的基础上得出的结论,应当比较有参考价值。
在这一章中有一个知识点应引起大家的注意,就是
实用。
所以对于它的掌握应当达到“ 综合应用” 的等级!(一点建议:如果你在第一次看的时候遇到了
可能迎刃而解了!^ )在这一章里还有一个数据结构就是串!关于串的具体的程序编制我想就不必太
花心思了。(考试时也就这么考了:-P )
如:DELETE(“ACABA” ,3 ,3)=?结果为:“AC”
又如:SUBSTR(“ABBCA” ,2 ,2)=?结果为:“BB”
2 ,栈,队列和数组:这一章里你要掌握的东西就比较简单了(如果你掌握了上一章的内容对于这一章来讲,基本上就没有难题了)这一章里你要牢记两个概念:关于栈和队列的修改原则:(1 ),
栈,后进先出,所有操作都是在栈顶进行的。除运算只能在对头进行!且注意对头指针指示对头元素在数组中实际位置的前一个位置;实现递归调用
属于栈的应用!再附上关于栈和队列的几道例题如下:
1 ,运算(* 作)是数据结构的一个重要方面,试举一例,说明两个数据结构的。存储方式完全相同,只是对于运算(* 作)的定义不同,因而两个结构具有显著不同的特性,是两个不
同的结构。答案:栈和队列的元素依次存放在一个数组中,他们的逻辑结构和存储方式完全一样,只是栈
的插入和删除* 作只能在一端进行,而队列的插入在对尾进行,出对(删除)* 作在对首进行,因而是两种不同的数据结构,并各自具有显著的特征。
(1 )C ,B ,A ,D ,E ;(2 )A ,C ,B ,E ,D ;其中I 为进栈* 作,O 为出栈操作
答案:1 ,IIIOOOIOIO2 ,IOIIOOIIOO
3 ,树:这一章里对于不善于编制程序的你可以说是一个解脱,因为这一章和图那章都只涉及到了很少的程序编制,不过千万别忽视这两章,因为这两章有很多的考点……
(1 ),关于树的一些概念:结点的度,树的度,节点的层树,树的深度等(千万别忽视这些概念,他们可是拿分的主角啊!)
(2 ),二叉树: 注意!二叉树是一类与树不同的树型结构!例:判断:二叉树是树的特殊情形(X)
二叉树的性质完全二叉树的性质
二叉树的遍历:前,中,后序遍历其中, 两点在选择或填空中肯定会考到!
(3 ),树和林: 树和林的存储结构①,孩子链表表示法②,孩子兄弟链表表示法
③,双亲表示法其中孩子兄弟链表表示法是树和林与二叉树相互转变的关键应熟练掌握!
树的遍历:前,后和按层次遍厉(注意与二叉树遍厉的区别)(4 )判定树和哈夫曼树:这一节里哈夫曼算法算是个重点,考试时有可能会在应用题中出现,
不过应该不会考程序设计,所以掌握起来还是比较轻松的!4 ,图
(1 ),图的基本概念:顶点,有向图,无向图,弧,边子图,连通图,连通分量,路径,环,网等
(2 ),图的存储结构:邻接矩阵法和邻接表法网要用邻接矩阵法来存储
(3 )图的遍厉:深度优先搜索和广度优先搜索,深度优先搜索是一个递归过程; ,广度优先搜索中,若对x 的访问先于y ,则对x
邻接点的访问也限于对y 邻接点的访问!(4 ),最小生成树:prim算法(很有可能会以应用题的形式出现)
(5 ),拓扑排序:带环的有向图不能进行拓扑排序(拓扑排序是针对有向图的!)写到这里关于数据结构导论的所有最重点章节就都已经介绍完了,后面的三章总共加起来可能
也就不过十几分,不过我们为了万无一失还是应该将其看完,但在后面的章节中,我们只要掌握概念性的东西就可以了,还值得一提的是,对于第八章排序,我们应当加以重视,各种排序方法,及稳定性还
1. 一般情况下,算法的基本操作重复执行的次数是模块n的某一个函数f(n),因此,算法的时间复杂度记做:T(n)=O(f(n)) 分析:随着模块n的增大,算法执行的时间的增长率和f(n)的增长率成正比,所以f(n)越小,算法的时间复杂度越低,算法的效率越高。
2. 在计算时间复杂度的时候,先找出算法的基本操作,然后根据相应的各语句确定它的执行次数,再找出T(n)的同数量级(它的同数量级有以下:1,Log2n ,n ,nLog2n ,n的平方,n的三次方,2的n次方,n!),找出后,f(n)=该数量级,若T(n)/f(n)求极限可得到一常数c,则时间复杂度T(n)=O(f(n)) 例:算法: for(i=1;i<=n;++i) { for(j=1;j<=n;++j) { c[ i ][ j ]=0; //该步骤属于基本操作 执行次数:n的平方 次 for(k=1;k<=n;++k) c[ i ][ j ]+=a[ i ][ k ]*b[ k ][ j ]; //该步骤属于基本操作 执行次数:n的三次方 次 } } 则有 T(n)= n的平方+n的三次方,根据上面括号里的同数量级,我们可以确定 n的三次方 为T(n)的同数量级 则有f(n)= n的三次方,然后根据T(n)/f(n)求极限可得到常数c 则该算法的 时间复杂度:T(n)=O(n的三次方)
3.分类 按数量级递增排列,常见的时间复杂度有: 常数阶O(1),对数阶O(log2n),线性阶O(n), 线性对数阶O(nlog2n),平方阶O(n2),立方阶O(n3),..., k次方阶O(nk), 指数阶O(2n) 。
随着问题规模n的不断增大,上述时间复杂度不断增大,算法的执行效率越低。
建议:多看一些带答案的习题就理解了
商家介绍:创梦云是来自国内的主机销售商,成立于2018年4月30日,创梦云前期主要从事免备案虚拟主机产品销售,现在将提供5元挂机宝、特惠挂机宝、香港云服务器、美国云服务器、低价挂机宝等产品销售。主打高性价比高稳定性挂机宝、香港云服务器、美国云服务器、香港虚拟主机、美国虚拟主机。官方网站:http://cmy0.vnetdns.com本次促销产品:地区CPU内存硬盘带宽价格购买地址香港特价云服务器1...
无忧云怎么样?无忧云服务器好不好?无忧云值不值得购买?无忧云,无忧云是一家成立于2017年的老牌商家旗下的服务器销售品牌,现由深圳市云上无忧网络科技有限公司运营,是正规持证IDC/ISP/IRCS商家,自营有国内雅安高防、洛阳BGP企业线路、香港CN2线路、国外服务器产品等,非常适合需要稳定的线路的用户,如游戏、企业建站业务需求和各种负载较高的项目,同时还有自营的高性能、高配置的BGP线路高防物理...
Friendhosting商家在前面的篇幅中也又陆续介绍到,是一家保加利亚主机商,主要提供销售VPS和独立服务器出租业务,数据中心分布在:荷兰、保加利亚、立陶宛、捷克、乌克兰和美国洛杉矶等。这不近期黑色星期五活动,商家也有推出了黑五优惠,VPS全场一次性45折,虚拟主机4折,全球多机房可选,老用户续费可获9折加送1个月使用时长,VDS折后最低仅€14.53/年,有需要的可以看看。Friendhos...