网站大量收购独家精品文档,联系QQ:2885784924

数据结构总复习解析.ppt

  1. 1、本文档共24页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构总复习解析

要求其时间复杂度。 某一个语句的频度计算表达式为 f(n)=10n3+5n2+18n,该表达式中,关于变量n的数量级的最大值是n3,所以很快得出则该算法的时间复杂度为O( n3 ) Ch1 绪论 Ch2 线性表--链式存储 B 例1:在一个单链表中,若p所指的结点不是最后结点,在p之后插入s所指结点,则执行的语句为 。 A s-next=p; p- next =s B s- next =p- next; p- next =s; C s- next =p- next; p=s; D p- next =s; s- next =p 2、描述以下三个概念的区别:头指针、头结点、首元结点(第一个元素结点)。在单链表中设置头结点的作用是什么? 答:头指针是指向链表中第一个结点(或为头结点或为首元结点)的指针; 头结点是在链表的首元结点之前附设的一个结点;数据域内只放空表标志和表长等信息. 首元素结点是指链表中存储线性表中第一个数据元素a1的结点 。 简述线性数据结构与非线性数据结构的区别 答: 线性数据结构的数据元素之间的关系是唯一的,是一对一的关系,每个结点最多有一个直接前驱和直接后继;非线性数据结构的数据元素之间的关系有多种,每个结点的直接前驱和直接后继不唯一。 链式存储与顺序存储的优缺点 . 答:链式存储结构时,要求内存中可用存储单元的地址连续或不连续都可以;但顺序存储的内存地址单元一定是连续的。 链式存储与顺序存储的优缺点:链式存储有利于插入删除运算,只需修改指针而不需要移动大量元素,但对于查找元素和求表长元素不如顺序存储方便;顺序存储有利于查找元素和求表长运算但做插入删除运算需要移动大量元素不方便。 算法设计题: 练习1:设A、B是两个单链表,其表中元素递增有序,写一算法将A、B归并成一个有序的单链表C,C也是递增有序的. 数据结构定义如下: typedef struct node {int data; struct node *next; } Listnode; typedef Listnode *Linklist; Listnode *p; Linklist A,B,C; 合并的思想:C=A+B void merge(Linklist A , Linklist B, Linklist C ) {Listnode *p,*q,*r; C=A; p=A-next; q=B-next; r=C; while(p!=null q!=null) //尾插法创建C链表 if(p-data=q-data) {r-next= p; r=p; p=p-next;} else {r-next= q; r=q; q=q-next;} while(p!=null ) {r-next= p; r=p; p=p-next;} while (q!=null) {r-next= q; r=q; q=q-next;} free(B); } 练习2: 编写实现将一个单链表就地逆置的算法。 数据结构定义如下: typedef struct node {int data; struct node *next; } Listnode; typedef Listnode *Linklist; Listnode *p; Linklist Head; void reverse(Linklist Head)//链表的就地逆置 {?Lnode *pnow,*ptemp; pnow=Head-next; Head-next=null; while(pnow!=null) { ptemp=pnow-next; pnow-next=Head-next; Head-next=pnow; pnow=ptemp; } }//reverse 简述栈和队列的异同点。 答:栈是一种先进后出的操作受限制的线性表,队列是一种先进先出的线性表。共同点:都是一种线性的数据结构,是操作受限制的线性表。栈通过栈顶指针进行元素的插入和删除操作;队列是通

文档评论(0)

little28 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档