- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
跳表
有序数组和链表有序数组支持高效随机访问,可以使用二分查找使得查找的时间复杂度为O(lgn),但插入和删除的时间复杂度为O(n)。有序链表在找到位置后,插入和删除快,但链表没有数组那样的高效随机访问,无法使用二分查找,只能一个节点一个节点遍历,所以链表查找、插入、删除的时间复杂度均为O(n)。
跳表(图片来源于网络)有没有什么办法让有序链表搜索、添加、删除的平均时间复杂度降低至O(logn)?有,一条有序链表不够,可以多加几条。(典型的以空间换时间)
跳表的搜索1、从顶层链表的首元素开始,从左往右搜索,直至找到一个大于或等于目标的元素,或者到达当前层链表的尾部2、如果该元素等于目标元素,则表明该元素已被找到3、如果该元素大于目标元素或已到达链表的尾部,则退回到当前层的前一个元素,然后转入下一层进行搜索
跳表的插入在插入节点之前,我们需要搜索得到插入的位置。插入元素时,需要随机决定新添加元素的层数。
跳表的删除如果要删除节点,则把节点和对应的所有索引节点全部删除即可。当然,要删除节点时需要先搜索得到该节点,搜索过程中可以把路径记录下来,这样删除索引层节点的时候就不需要多次搜索了。删除一个元素后,整个跳表的层数可能会降低
谢谢!
您可能关注的文档
- 《算法导论》第00讲 课程讲解内容和算法学习目标.pptx
- 《算法导论》第2章 算法基础.pptx
- 《算法导论》第3.4章 渐近符号、递归及解法.pptx
- 《算法导论》第5章 概率分析和随机算法.pptx
- 《算法导论》第6章 堆排序.pptx
- 《算法导论》第7章 快速排序.pptx
- 《算法导论》第8章 线性时间排序.pptx
- 《算法导论》第9章 中位数和顺序统计量.pptx
- 《算法导论》第10章 二叉树.pptx
- 《算法导论》第11章 散列表.pptx
- 2025年工程施工协议书模板10篇 .pdf
- 2025年工程承揽合同范本12篇 .pdf
- 部编版六年级下册道德与法治第四单元《让世界更美好》测试卷精品(各地真题).docx
- 部编版六年级下册道德与法治第四单元《让世界更美好》测试卷精品(名校卷).docx
- 部编版六年级下册道德与法治第四单元《让世界更美好》测试卷附完整答案【夺冠系列】.docx
- 部编版六年级下册道德与法治第四单元《让世界更美好》测试卷重点.docx
- 部编版六年级下册道德与法治第四单元《让世界更美好》测试卷附参考答案(培优a卷).docx
- 部编版六年级下册道德与法治第四单元《让世界更美好》测试卷附参考答案【培优a卷】.docx
- 部编版六年级下册道德与法治第四单元《让世界更美好》测试卷附参考答案【a卷】.docx
- 部编版六年级下册道德与法治第四单元《让世界更美好》测试卷附下载答案.docx
文档评论(0)