File tree Expand file tree Collapse file tree 1 file changed +3
-3
lines changed Expand file tree Collapse file tree 1 file changed +3
-3
lines changed Original file line number Diff line number Diff line change 39
39
``` ts
40
40
interface ListNode <T > {
41
41
data: T ;
42
- next: ListNode ;
42
+ next: ListNode < T > ;
43
43
}
44
44
```
45
45
@@ -401,7 +401,7 @@ class Solution:
401
401
- 如果题目的头节点可能被移除,那么考虑使用虚拟节点,这样** 头节点就变成了中间节点** ,就不需要为头节点做特殊判断了。
402
402
- 题目让你返回的不是原本的头节点,而是尾部节点或者其他中间节点,这个时候要注意指针的变化。
403
403
404
- 以上两者部分的具体内容,我们在稍微讲到的虚拟头部分讲解 。老规矩,大家留个印象即可。
404
+ 以上两者部分的具体内容,我们在稍后讲到的虚拟头部分讲解 。老规矩,大家留个印象即可。
405
405
406
406
### 前后序
407
407
@@ -455,7 +455,7 @@ def dfs(head):
455
455
456
456
可以看出,这两种写法不管是边界,入参,还是代码都不太一样。为什么会有这样的差异呢?
457
457
458
- 回答这个问题也不难,大家只要记住一个很简单的一句话就好了,那就是** 如果是前序遍历,那么你可以想象前面的链表都处理好了,怎么处理的不用管** 。相应地** 如果是后续遍历 ,那么你可以想象后面的链表都处理好了,怎么处理的不用管** 。这句话的正确性也是毋庸置疑。
458
+ 回答这个问题也不难,大家只要记住一个很简单的一句话就好了,那就是** 如果是前序遍历,那么你可以想象前面的链表都处理好了,怎么处理的不用管** 。相应地** 如果是后序遍历 ,那么你可以想象后面的链表都处理好了,怎么处理的不用管** 。这句话的正确性也是毋庸置疑。
459
459
460
460
如下图,是前序遍历的时候,我们应该画的图。大家把注意力集中在中间的框(子结构)就行了,同时注意两点。
461
461
You can’t perform that action at this time.
0 commit comments