![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
禾木人生
这个作者很懒,什么都没留下…
展开
-
数据索引方式
B树 即二叉搜索树: 1.所有非叶子结点至多拥有两个儿子(Left和Right); 2.所有结点存储一个关键字; 3.非叶子结点的左指针指向小于其关键字的子树,右指针指向大于其关键字的子树; 如: B树的搜索,从根结点开始,如果查询的关键字与结点的关键字相等,那么就命中;否则,如果查询关键字比结...转载 2018-10-26 10:52:07 · 361 阅读 · 0 评论 -
红黑树
教你初步了解红黑树 作者:July、saturnman 2010年12月29日本文参考:Google、算法导论、STL源码剖析、计算机程序设计艺术。推荐阅读:Left-Leaning Red-Black Trees, Dagstuhl Workshop on Dat...转载 2018-10-26 11:10:39 · 150 阅读 · 0 评论 -
数据结构(一)
根据这段时间学习的数据结构和自己翻看资料记录一下自己的学习笔记目录复杂度分析分析统计代码的执行效率和资源消耗最好,最坏,平均,均摊时间复杂度今天主要总结一下算法或者是自己在写代码时的效率,也稍微提一点资源消耗,其实官方一点就是算法的时间复杂度和空间复杂度,当然主要说一下时间复杂度,空间复杂度在这里就不提了。分析为什么要了解代码或者算法的复杂度因为首先可以节约资源节省时间,...原创 2019-03-17 12:22:43 · 110 阅读 · 0 评论 -
数据结构(二)
单链表反转特点: 输入一个链表,反转(指向也反转),输出 OK描述; 1->2->3->4 反转 4->3->2->1方法: 两种,递归,和 循环建议两个都要知道,因为特定的环境下循环比递归要好,递归顾名思义,就是同样的解决方法层层解决数据。递归从来都是遍历到最底层,然后从最底层开始计算,由下到上计算。思路: 递归从1到4,设置一个基础判断...原创 2019-03-28 22:04:00 · 188 阅读 · 0 评论 -
数据结构(三)
上节在数据结构(二)说了几个关于链表比较有思考性的算法,关于链表在原先周会学习的时候讲了链表的常见算法,所以接下继续把链表的几个常见的算法跟着写一下,因为我感觉除了数组外,就是链表了,所以讲几种链表常见的算法有利于自己写代码时思维发散,提高自己的编码能力,也可以提高代码的整体性能,减少时间损耗。主要有两类:链表,和快速排序的思维方式目录链表单链表反转(在前一节讲过)链表的中环检测两...原创 2019-04-14 23:20:00 · 142 阅读 · 0 评论 -
数据结构(四)
根据数据处理通过 IP 地址来查找 IP 归属地的功能,不知道你有没有用过?没用过也没关系,你现在可以打开百度,在搜索框里随便输一个 IP 地址,就会看到它的归属地。这个功能并不复杂,它是通过维护一个很大的 IP 地址库来实现的。地址库中包括 IP 地址范围和归属地的对应关系。当我们想要查询 202.102.133.13 这个 IP 地址的归属地时,我们就在地址库中搜索,发现这个 IP 地址...原创 2019-04-19 22:35:00 · 123 阅读 · 0 评论 -
数据结构(五)
最近看了数据结构的跳表,特有感悟,在前几节讲过一个二分的查找法排序,他的排序时间一般都是O(logn)而二分查找底层依赖的是数组随机访问的特性,所以底层用的数组来来实现的。在数据结构中存储方式其实不只是有数组,还有一个非线性结构的链表。假设一组数都是存在链表上的,这个二分法的效果就不尽人意了。在看过跳表这个处理方式之后发现链表查找数据也可以是O(logn)的时间,只需要稍加改造也可以支持快速的插入...原创 2019-05-15 10:22:57 · 159 阅读 · 0 评论