我真的不喜欢写代码 队列的特点 先进先出,即只能从队尾插入元素,从队头删除元素 队列的链式存储结构 队列的顺序存储结构 循环队列 为什么要实现循环队列 ( 图片来自严蔚敏的数据结构 ): 上图是队列的普通顺序存储,队列存入数据后,每删除一个元素,front指针都会上移,则front上一个指向的空间就 ...
分类:
编程语言 时间:
2019-10-14 14:45:25
阅读次数:
111
简介 java集合类是java.util 包中的重要内容。java集合框架包含了大量集合接口以及这些接口的实现类和操作他们的算法。 java集合框架图 主要提供的数据结构 + List 又称 有序的Collection 。它按照对象的进入顺序保存对象,可以对列表中的每个元素的出入和删除元素位置进行精 ...
分类:
编程语言 时间:
2019-10-13 16:45:23
阅读次数:
94
一、队列 1.队列类型 FIFO:先进先出 LIFO:后进先出(等同于栈) 优先级队列 双端队列:LIFO和FIFO结合,可以从队首和队尾添加和删除元素 循环队列:队首和队尾相连(可用来解决假溢出) 2.Python自带Queue模块【线程不安全,需加锁】 支持三种队列类型: FIFO(queue. ...
分类:
编程语言 时间:
2019-10-11 12:42:29
阅读次数:
92
栈,又名堆栈,它是一种运算受限的线性表。其限制是仅允许在表的一端进行插入和删除运算。这一端被称为栈顶,相对地,把另一端称为栈底。 向一个栈插入新元素又称作进栈、入栈或压栈,它是把新元素放到栈顶元素的上面,使之成为新的栈顶元素;从一个栈删除元素又称作出栈或退栈,它是把栈顶元素删除掉,使其相邻的元素成为 ...
分类:
编程语言 时间:
2019-10-10 15:54:12
阅读次数:
86
stl_list.h : list:一个可从任意位置快速插入和删除元素的双向链表,可在常数时间内完成,但是取数据、查找等则需要线性时间; _List_node_base:链表节点基类struct,仅包含_M_next、_M_prev成员,其分别为指向当前节点基类类型的下一个、上一个节点的指针; _L... ...
分类:
其他好文 时间:
2019-10-10 12:47:46
阅读次数:
68
一,队列的定义 ?和栈相反,队列是一种先进先出的线性表。它只允许在表的一端进行插入,而在另一端进行删除元素。 ?在队列中,允许插入的一端叫队尾。允许删除的一端叫队头。 ?队列中的元素按a0,a1.....an这个顺序入队,退队时也必须按这个顺序出队。即a0出队后,a1才可以出队。 二,顺序队列的表示 ...
分类:
其他好文 时间:
2019-10-08 14:07:08
阅读次数:
94
一、操作 添加删除元素、设置容器大小以及获取容器元素。 二、容器类型别名(常用) size_type:无符号整型,容器长度 iterator:迭代器;const_iterator:只读容器迭代器 value_type:元素类型 reference:元素引用 其他如逆序、迭代器差值等等。 示例: 三、 ...
分类:
编程语言 时间:
2019-10-05 18:52:18
阅读次数:
117
引发问题的场景 今天在写一个小游戏的demo时,进行游戏元素操作时,遇到了一个问题.类似下面代码: 本意是遍历删除list中的所有元素.最后list应该为一个空数组. 但是代码实际运行结果是 问题分析 很明显的是,在list中只删除了前两个元素 ,但是本意是删除所有元素. 也就是for循环是执行了两 ...
分类:
编程语言 时间:
2019-10-04 22:56:27
阅读次数:
124
队列也是一种表,不同的是队列在一端进行插入而在另一端进行删除。 队列模型 队列的基本操作包括入队、出队操作。在表的末端插入元素,在表的开头删除元素,即先进先出(FIFO)。 队列的数组实现 对于每一个队列数据结构,保留一个数组items以及位置front和back,分别表示队列的两端,还要记录元素的 ...
分类:
编程语言 时间:
2019-10-04 16:50:39
阅读次数:
88
1. 内部添加 加上去是父子关系 append 加到后面 prepend 加到前面 2. 外部添加 加上去是兄弟关系 3.删除元素 ...
分类:
Web程序 时间:
2019-10-03 00:57:18
阅读次数:
111