“ 如果你想通过数据结构导论这门课,至少得看两遍书吧?”
第一遍就是粗略的看一下,这样你心里也就有了底,也就大概的了解了数据结构导论这门课所讲的内容,并且那里是考点在头脑里也就都有了大致的把握,这样,你就可以带着相应的重点,去重点
把握你觉得重要的东西了!不过其实你到现在如果连一遍也没看过呢,也没关系,我下面的总结就是希望能对这些还没看过书的人,有所帮助!
下面就列出一些我觉得是重点的东西: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的不断增大,上述时间复杂度不断增大,算法的执行效率越低。
建议:多看一些带答案的习题就理解了
标题【萤光云双十二 全场6折 15元/月 续费同价】今天站长给大家推荐一家国内云厂商的双十二活动。萤光云总部位于福建福州,其成立于2002 年。主打高防云服务器产品,主要提供福州、北京、上海 BGP 和香港 CN2 节点。萤光云的高防云服务器自带 50G 防御,适合高防建站、游戏高防等业务。这家厂商本次双十二算是性价比很高了。全线产品6折,上海 BGP 云服务器折扣更大 5.5 折(测试了一下是金...
mansora怎么样?mansora是一家国人商家,主要提供沪韩IEPL、沪日IEPL、深港IEPL等专线VPS。现在新推出了英国CN2 KVM VPS,线路为AS4809 AS9929,可解锁 Netflix,并有永久8折优惠。英国CN2 VPS,$18.2/月/1GB内存/10GB SSD空间/1TB流量/100Mbps端口/KVM,有需要的可以关注一下。点击进入:mansora官方网站地址m...
VirMach,成立于2014年的美国IDC商家,知名的低价便宜VPS销售商,支持支付宝、微信、PayPal等方式付款购买,主打美国、欧洲暑假中心产品,拥有包括洛杉矶、西雅图、圣何塞、凤凰城在内的11个数据中心可以选择,可以自由搭配1Gbps、2Gbps、10Gbps带宽端口,有Voxility DDoS高防IP可以选择(500Gbps以上的防御能力),并且支持在控制面板付费切换机房和更换IP(带...