2021年07月26日 随堂笔记

链表回顾

创建链表的时候,把创建好的链表赋值给this指针。
方法的参数要尽量的少

链表的倒置

image-20210726142352908

明天任务

模拟SQL登陆

栈和队列

先进后出

栈的操作

入栈 push

出栈 pop

取栈顶元素 top

判断栈是否为空 isEmpty

括号匹配问题

输入一个字符串,判断一个字符串中的括号是否都整除的开合。

从左向右扫描,遇到左括号,则入栈,如果遇到右括号,则判断该右括号是否与栈顶的左括号是否匹配
如果不匹配,则退出,如果匹配则继续下一个匹配
如果扫描结束,栈为空,则说明括号匹配

img

课堂习题:使用链表实现一个栈

队列

先进先出

队列可以解决那些问题

使用链表实现一个队列

使用数组实现一个队列

使用循环数组

tail=(tail+1)%size
head=(head+1)%size

如何判断空

使用一个计数器,如果计数器的数值等于数组的长度,那就满了

题目:

使用泛型

  • 数组实现队列 和 堆栈
    • 数组满了,则扩容
  • 链表竖线队列 和 堆栈