- 1、本文档共38页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[其它]数据结构第9章1
查找表 由同一类型的数据元素(记录)构成的集合。 查找的定义 给定一个值key,在含有n个记录的表中找出关键字等于key的记录。若找到,则查找成功,返回该记录的信息或该记录在表中的位置;否则查找失败,返回相关的指示信息。 折半查找的效率分析 静态查找表的三种查找方法的比较 顺序查找对对于表有序、无序均适用;折半查找仅适用于有序表;分块查找要求表分块后“分块有序”。 从表的存储结构上看,顺序查找和分块查找对于表的顺序和链式存储结构均适用,而折半查找只适用于顺序存储结构。 平均查找长度ASL而言,折半最小(log2(n+1)-1),分块次之,当 时( ),顺序最大((n+1)/2)。 作业: 9.1 9.2 9.3 9.7 9.25 (2) 若p结点只有左子树,或只有右子树,则可将p的左子树或右子树直接改为其双亲结点f的左(右)子树, 即:f-rchild=p-lchild(或f-rchild=p-rchild); free(p); (3) 若p既有左子树,又有右子树,设p为双亲f的左孩子。 此时有两种处理方法: 方法1:将p的左子树改为f的左子树,而将p的右子树改为s的右子树。 CLC…QLQSLSPPRF S为P的直接前驱,在其“左子树最右下”的结点 方法2:用s结点的值替代p结点的值,再将s结点删除,原s结点的左子树改为s的双亲结点q的右子树。 CLC…QLQSLSPPRF Status DeleteBST(BiTree T, KeyType key) { if( !T ) return FALSE; else{ if(T-key == key) return Delete(T); else if(T-key key) return DeleteBST(T-lchild, key); else return DeleteBST(T-rchild, key); return TRUE; } } * * 数据结构 基础数据结构 应用数据结构 非线性结构 线性结构 线 性 表 栈 队 列 串 数 组 广 义 表 树 二 叉 树 图 查 找 内 部 排 序 外 部 排 序 文 件 动 态 存 储 管 理 9.1 查找的基本概念 9.2 静态查找表——基于线性表的查找法 9.3 动态查找表——基于树表的查找法 9.4 哈希表——计算式查找法 第9章 查找 1. 查找的基本概念 采用何种查找方法? 使用哪种数据结构来表示“表”,即表中记录是按何种方式组织的。 表中关键字的次序。是对无序集合查找还是对有序集合查找? 静态查找表(Static Search Table):查询某个特定的元素是否在表中;检索某个特定的元素的各种属性。 动态查找表(Dynamic Search Table):若在查找的同时对表做修改运算(如插入和删除)。 主关键字:能唯一标识一个记录的关键字。 次关键字:能标识多个记录的关键字。 2. 查找操作的性能分析 基本操作:将记录的关键字和给定值进行比较。 平均查找长度ASL(Average Search Length) :为确定数据元素在查找表中的位置, 需和给定值进行比较的关键字个数的期望值,称为查找算法在查找成功时的平均查找长度。 Pi为查找表中第i个记录的概率,Ci为找到第i个记录时,和给定值已经进行过比较的关键字个数。 在表的组织方式中,线性表是最简单的一种。三种在线性表上进行查找的方法: (1) 顺序查找 (2) 折半查找(二分查找) (3) 索引顺序表查找(分块查找)。 因为不考虑在查找的同时对表做修改,故上述三种查找操作都是在静态查找表上实现的。 9.1 静态查找表 1.顺序查找 顺序查找法的特点:用所给关键字与线性表中各元素的关键字逐个比较,直到成功或失败。 开始: 3 9 1 5 8 10 6 7 2 4 第1次比较: 3 9 1 5 8 10 6 7 2 4 i=0 第2次比较: 3 9 1 5 8 10 6 7 2 4 i=1 第3次比较: 3 9 1 5 8 10 6 7 2 4
您可能关注的文档
- [六年级语文]人教版小学六年级回顾·拓展一表格式教学设计.doc
- [六年级语文]六年级语文教师个人工作总结.doc
- [六年级语文]六年级语文教案.doc
- [六年级语文]大象版六年级科学上册复习资料.doc
- [六年级语文]小升初语文高分需掌握事项.doc
- [六年级语文]小学六年级语文下册第一二单元导学案.doc
- [六年级语文]尚上教育2011小学语文阅读与基础补充讲义54期.doc
- [六年级语文]小语第十二册计划.doc
- [六年级语文]必备古诗词.doc
- [六年级语文]描写四季的词句诗.doc
- 场地脚手架工程施工方案(3篇).docx
- 2024年浙江省丽水市松阳县玉岩镇招聘社区工作者真题及参考答案详解一套.docx
- 2024年河南省郑州市惠济区古荥镇招聘社区工作者真题及答案详解一套.docx
- 2024年浙江省杭州市淳安县文昌镇招聘社区工作者真题及完整答案详解1套.docx
- 2024年浙江省台州市三门县小雄镇招聘社区工作者真题带答案详解.docx
- 2024年浙江省宁波市余姚市河姆渡镇招聘社区工作者真题及完整答案详解1套.docx
- 2024年浙江省丽水市景宁畲族自治县雁溪乡招聘社区工作者真题及答案详解一套.docx
- 2024年浙江省杭州市临安市板桥乡招聘社区工作者真题及答案详解一套.docx
- 2024年湖北省宜昌市点军区土城乡招聘社区工作者真题及答案详解一套.docx
- 2024年浙江省台州市路桥区桐屿街道招聘社区工作者真题附答案详解.docx
文档评论(0)