单向循环链表尾结点指向头节点
2exercise/05_single_cycle_link_list
主要注意点是从尾结点向头结点的链接,特别是针对更改头尾节点的情况、以及只包含一个数据的特殊情况
遍历和求长度
添加元素(头部、尾部、中间)
删除元素
双向链表扩充为双向循环链表(练习)
2exercise/06_double_cycle_link_list
栈
栈是一种容器,可以存入数据元素、访问元素、删除元素在同一端输入、输出数据
确定了一种后进先出的原理运作。(队列在一端进行输入、另一端输出数据,原则是先进先出)
加入数据push
输出数据pop
栈的操作
Stack)创建一个新的空栈
push(item)添加一个新的元素item到栈顶
pop() 弹出栈顶元素
peek()返回栈顶元素
is_empty)判断栈是否为空
size()返回栈的元素个数
队列
取的一端叫队头,存的一端叫队尾
队列的操作
Queue()创建一个空的队列
enqueue(item)往队列中添加一个item元素
dequeue()从队列头部删除一个元素
is_empty()判断一个队列是否为空.
size()返回队列的大小
双端队列(可看做底在一起的两个队列)
Deque()创建一个空的双端队列
add_front(item)从队头加入一个item元素
add_rear(item)从队尾加入一个item元素
remove_front()从队头删除一个item元素.
remove_rear(从队尾删除一个item元素.
is_empty()判断双端队列是否为空-
size()返队列的大小