- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一、线性表:
线性表的定义和抽象数据类型:线性表可以是有序、无序表;抽象类型包括数据和操作两个部分,数据部分可以用顺序,链接,散列,索引任何一种方法存储到计算机中;线性表的顺序存储结构和链接存储结构(单链表,双向链表,带表头的附加结点的线性链表,循环链表);操作:初始化单链表,删除单链表中的所有结点,使之成为一个空表,得到单链表的长度,检查单链表是否为空,得到单链表多种第及个结点中的元素,遍历一个单链表,从单链表中查找出等于给定值的第一个元素,更新单链表中等于给定值的第一个元素,向单链表中按照给定条件插入一个元素,从单链表中删除符合给定条件的第一个元素,对单链表进行数据排序.
二、稀疏矩阵、集合、广义表
稀疏矩阵:非零元素的个数远远小于零元素个数,对于每个非零元素的表示是通过三元组(主序:行号,辅序:列号,元素值),采用顺序或链式方式存储。
广义表:线性表的推广,表或表中表。采用动态链接结构。递归的数据结构。
三、栈和队列
栈:只允许在表的一端进行插入和删除运算,对栈进行运算的成为栈顶,另一端为栈底。向栈插入元素叫进栈,删除元素叫出栈。栈是先进后出。栈顶指针为-1表示栈为空,进栈,栈顶指针+1,出栈,栈顶指针-1.递归数据结构。
队列:在一端进行插入,在另一端进行删除,插入的一端叫做队尾(rear),进行删除的一端叫做队首(front),先进先出。
四、树
非线性数据结构。
结点的度和树的度;分支结点和叶子结点;孩子结点和双亲结点;结点的层数和树的深度;有序树和无序树;森林;
树的性质;
二叉树:度为2的有序树。存储结构:顺序存储,数组;链接存储结构:指针;
二叉树的遍历:前序遍历:DLR
中序遍历:LDR
后序遍历:LRD
树的遍历:先根遍历,后根遍历,按层遍历
五:图
顶点的度依附于顶点的边的数目记为td(v) ;
顶点的出度 od(v) ;
顶点的入度 id(v) ;
td(v)=od(v)+id(v);
性质:
1 n个顶点的无向图最多有n(n-1)/2 条边;
2 n个顶点的有向图最多有n(n-1)条边;
六:查找:
查找:
1、顺序查找
2、二分查找
3、分块查找
4、数表的动态查找(二叉排序树查找、平衡二叉树AVL树、B树、B+树)
5、哈希查找
查找有静态查找和动态查找两种,静态查找只在数据结构里查找是否存在某 个记录而不改变数据结构。实现静态查找的数据结构称为静态查找表;动态查找 要在查找过程中插入数据结构中不存在的记录,或者从数据结构中删除已存在的记录。实现动态查找的数据结构称为动态查找表。衡量查找算法的标准是平均查 找长度,它是指在查找过程中进行的关键码比较次数的平均值。实现动态查找的 数据结构称为动态查找表。
静态查找表的查找方法主要有顺序查找、折半查找和索引查找等。顺序查找 不要求查找表中的记录有序,效率不是很高,适合于记录不是很多的情况。折半 查找要求查找表中的记录有序,查找效率很高,适合于记录比较多的情况。索引查找要求查找表分段有序,适合于记录非常多的情况。动态查找表主要介绍了二 叉排序树。二叉排序树是一棵二叉树,其左子树结点关键码的值小于根结点关键 码的值,右子树结点关键码的值大于根结点关键码的值。二叉排序树上的操作主要有查找、插入和删除等操作。
在哈希表中查找记录不需要进行关键码的比较,而是通过哈希函数确定记录 的存放位置。哈希函数的构造方法很多,主要有直接定址法、除留余数法、数字 分析法和平方取中法等。由于同义词会产生哈希冲突,解决哈希冲突的方法主要 有开放地址法和链表法等,其中开放地址法主要有线性探测法和二次探测法等。查找又称检索,是在程序设计中对数据结构中的记录进行处理时经常采用的 一种操作。同排序一样,查找是对关键码进行处理,关键码分为主关键码和次关键码,以主关键码进行的查找是最经常、也是最主要的查找。
1.顺序查找法
即从第一个元素顺序到最后一个元素依次与待查的值进行比较,如果相等,查找成功,否则继续比较,直到所有元素都比较过了,如果还没有匹配的值,查找失败。查找适用于数据量少、不要求已经排序的数据,它的时间复杂度为O(N);
2.二分查找
又称折半查找,适用于数据量大、已经排序的数据,它的时间复杂度为O(Log2(N))。
二分查找的基本思想是(设R[low..high]是当前的查找区间) :
(1)首先确定该区间的中点位置:mid=(low+high)/2
(2)然后将待查的K值与R[mid].key比较:若相等,则查找成功并返回此位置,否则须确定新
文档评论(0)