
数据结构
sam5828
一步一步的修炼
展开
-
环形缓冲区笔记
环形缓冲区其实就是数组 buf[len]1.空的时候w = r2.写:buf[w]=valw=(w+1)%len;3.读val=buf[r];r=(r+1)%len;4.满(w+1)%len=r原创 2016-08-16 15:48:05 · 394 阅读 · 0 评论 -
浅谈算法和数据结构(11):哈希表
原文出处: 寒江独钓 在前面的系列文章中,依次介绍了基于无序列表的顺序查找,基于有序数组的二分查找,平衡查找树,以及红黑树,下图是它们在平均以及最差情况下的时间复杂度:可以看到在时间复杂度上,红黑树在平均情况下插入,查找以及删除上都达到了lgN的时间复杂度。那么有没有查找效率更高的数据结构呢,答案就是本文接下来要介绍了散列表,也叫哈希表(Hash Table)转载 2016-10-21 16:47:20 · 1477 阅读 · 0 评论 -
线性结构和非线性结构
线性结构是一个有序数据元素的集合。1.集合中必存在唯一的一个"第一个元素";2.集合中必存在唯一的一个"最后的元素";3.除最后元素之外,其它数据元素均有唯一的"后继";4.除第一元素之外,其它数据元素均有唯一的"前驱"。数据结构中线性结构指的是数据元素之间存在着“一对一”的线性关系的数据结构。如(a0,a1,a2,.....,an),a0为第一原创 2016-11-11 16:11:51 · 852 阅读 · 0 评论 -
如何抽象数据类型
涉及到三个方面:数据对象数据关系基本操作接口====================================================填充数据对象阐述数据对象之间的关系提供对象操作的接口,比如插入,删除之类的原创 2016-11-11 16:32:24 · 332 阅读 · 0 评论