写在前面: 数组和链表是数据结构中最基础的两种结构,其他的都是由这两者转化而来;因此,掌握这两种结构至关重要!下面,时光就带大家来学习一下数组和链表; 思维导图: 1,什么是线性表? 线性表是具有相同类型的n(>=0)个数据元素的有限序列(a0,a1,a2 ...
序 上个月老大给我们讲解了 浅谈大型网站的算法和架构 ,获益匪浅。由于篇幅太多 光数据结构大概就有 多种 ,我也没有办法一下全部吸收,故我边理解,边分章节与大家分享。 这周我查阅资料,来理解各个数据结构和算法。 推荐几本个人感觉不错的书籍: 我把电子书放到 http: download.csdn.net user rtxbc这里了,需要下载,到这里进行下载。 指针的艺术.蔡明志 我只看了C语言这 ...
2012-09-27 15:59 54 12007 推荐指数:
写在前面: 数组和链表是数据结构中最基础的两种结构,其他的都是由这两者转化而来;因此,掌握这两种结构至关重要!下面,时光就带大家来学习一下数组和链表; 思维导图: 1,什么是线性表? 线性表是具有相同类型的n(>=0)个数据元素的有限序列(a0,a1,a2 ...
目录 序 堆栈是什么? 实现方式 静态数组堆栈 动态数组堆栈 链式堆栈 总结 序 我一直在想一个 ...
序 很多博友要求我修改标题,我也感觉这几篇文章确实跟大型网站和架构关系不大,所以决定修改标题。 上文聊到伸展树,这篇讲ISAM树。 ...
数据结构是我们软件开发中最基础的部分了,它体现着我们编程的内功。大多数人在正儿八经学习数据结构的时候估计是在大学计算机课上,而在实际项目开发中,反而感觉到用得不多。 其实也不是真的用得少,只不过我们在使用的时候被很多高级语言和框架组件封装好了,真正需要自己去实现的地方 ...
前言:终于到了疯狂学习数据结构的时候,换个好看的题图,开始吧.. 数组 什么是数组? 数组简单来说就是将所有的数据排成一排存放在系统分配的一个内存块上,通过使用特定元素的索引作为数组的下标,可以在常数时间内访问数组元素的这么一个结构; 为什么能在常数时间内访问数组元素 ...
摘要 上期共同探究了下动态数组的添加、删除等实现方法,想要再回顾一下的话,点击我去再看看。接下来继续探究数组。 其实,动态数组有个明显的缺点,就是有可能造成内存空间的大量浪费。那么有什么办法可以做到用多少就给多少呢?这时,咱接着探究一下链表,看看能不能解决这个疑问。 链表 话 ...
算法基础~链表~排序链表的合并(k条) 1,题意:已知k个已排序链表头结点指针,将这k个链表合并,合并后仍然为有序的,返回合并后的头结点。 2,方法之间时间复杂度的比较: 方法1(借助工具vector封装好的sort方法):将k * n个结点放到vector,则原 vector的排序 ...
序 承接上文,我们继续聊这个话题。 平衡二叉树:AVL Tree(1962) 上文我们只实现了单旋, ...