数据结构
来源:互联网 发布:js radio disabled 编辑:程序博客网 时间:2024/05/20 23:08
在顺序队列当判断为满时,用了realloc。这是个扩大数组容量的函数,但有一缺点,(网上很多都是废话)。这个函数将新建一个数组,数组长度由参数定义,返回的是新的数组指针(地址)。有人会问那我们原来那个数组呢,删了啊 。扯远了,回来。
那个判断当满队列时就用这个函数,这时已默认队列为满。然后它判断尾指针是否指向最后一个位置:如果不是,将队列的数据一个一个移到原先最大位置的后面(即扩大两倍后,再把队列复制(画个图是这样的:10变成1000,接着1010就是这样)),它的注释写着:队尾指针后移。WTF,不得不对网上一些人写的文章吐槽。。。今天在写source code时要申请一块buffer。
问题解决,队列入队时,队头指针可能不是指向第一个数据的位置。WTF那个奇葩写的书。
又有深的理解了,仅在一端插入,另一端删除。即队头有删除后,队头指针后移。而队尾的插入速率较快,队头未删除,队尾就排满了。队尾指针的后移也兼顾到了队首指针的后移,以及后续的插入与删除。是个好的算法....打脸博文。啪啪啪
0 0
- 数据结构
- 数据结构
- 数据结构
- 数据结构
- 数据结构
- 数据结构
- 数据结构
- 数据结构
- 数据结构
- 数据结构
- 数据结构
- 数据结构
- 数据结构
- 数据结构
- 数据结构
- 数据结构
- 数据结构
- 数据结构
- oc- 字符串方法
- 可变参数宏
- 【数学建模】数学建模(一)——数学模型概述
- Take Action Today
- xcode release 和 debug 模式造成的不同
- 数据结构
- uva 11100 The trip
- linux cpu占用率
- Spring Hello World 实例
- oc - 数组及字符串拼接与分割
- C语言中文网《c,c++,linux,mysql...》
- 从头开始写java--第一篇:为什么要做这个事情
- 《C语言及程序设计》实践项目——数据的输出
- 循环-01. 求整数段和(15)