Problem: 94. 二叉树的中序遍历
思路
我们都知道中序遍历是左边 ——> 中间 ——> 右边
解题方法
- 一直向左边走
- 到达左边尽头后弹出并打印,然后向右边走一个。
- 继续一直向左边走。
- 到达左边尽头后弹出并打印,然后向右边走一个。
- 结束条件是 p 和栈 S 都为空。
复杂度
时间复杂度:
空间复杂度:
Problem: 94. 二叉树的中序遍历
我们都知道中序遍历是左边 ——> 中间 ——> 右边
时间复杂度:
空间复杂度:
线性表的链式表示、链式存储结构、链式映像、随机存取结构的储存结构
指向首元结点的指针叫做头指针(head pointed)
第一个结点叫头结点(head node)
目前将会放弃 Github page,选择使用 Cloudflare page,因为 Github page 的访问速度实在是太慢了,而且还经常被墙,所以我决定放弃 Github page,转而使用 Cloudflare page,这样就可以让大家更快的访问我的博客了。
线性表的顺序表示、顺序存储结构、顺序映像、随机存取结构的储存结构
利用数组的连续存储空间顺序存放线性表的各个元素
a[n-1]
是 a[n]
的直接前趋,a[n+1]
是 a[n]
的直接后继。
1 | typedef struct sqList { |
1 | class LNode: |
在之前的 C 语言的学习当中,我们提到了 malloc
和 free
,这两个函数是用来动态分配内存的。
看好。
动态分配的代码是这样写的。
1 |
|
1 | typedef struct { |
我来解释一下,这个结构体声明。
length 是你实际存了多少的东西,listSize 是你目前表的最大长度。
其实,无非就是创、增、删、改、读、销。