File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -275,7 +275,7 @@ Invert Binary Tree
275275 :diffculty: Easy
276276 :language: go
277277 :key: 二叉树
278- :date: 2021-07-07
278+ :date: 2021-07-07 2026-03-23
279279
280280我能去 Google 了吗?[# ]_
281281
@@ -691,9 +691,12 @@ Reverse Linked List
691691递归
692692 万万没想到……递归我没写出来。看题解,题解说很明白了。
693693
694+ 2026-03-23: 写出来了
695+
694696迭代
695697 拿个栈。
696698
699+ 2026-03-23: 存 cur 和 next 两个指针。
697700
698701Reverse Linked List II
699702----------------------
Original file line number Diff line number Diff line change 11package main
22
3- // for a binary tree node.
3+ // for a binary tree node.
44type TreeNode struct {
55 Val int
66 Left * TreeNode
77 Right * TreeNode
88}
99
1010func invertTree (root * TreeNode ) * TreeNode {
11- if root != nil {
12- l := root .Left
13- r := root .Right
14- root .Left = invertTree (r )
15- root .Right = invertTree (l )
11+ if root == nil {
12+ return nil
1613 }
14+ l , r := root .Left , root .Right
15+ root .Left = invertTree (r )
16+ root .Right = invertTree (l )
1717 return root
1818}
1919
Original file line number Diff line number Diff line change @@ -44,6 +44,23 @@ func reverseList2(head *ListNode) *ListNode {
4444 return head
4545}
4646
47+ // 迭代法,存两个指针。
48+ func reverseList3 (head * ListNode ) * ListNode {
49+ if head == nil || head .Next == nil {
50+ return head
51+ }
52+ cur := head
53+ next := head .Next
54+ for next != nil {
55+ nextnext := next .Next
56+ next .Next = cur
57+ cur = next
58+ next = nextnext
59+ }
60+ head .Next = nil
61+ return cur
62+ }
63+
4764func main () {
4865 a := reverseList (& ListNode {Val : 1 , Next : & ListNode {Val : 2 }})
4966 for a != nil {
@@ -55,4 +72,9 @@ func main() {
5572 fmt .Println (a )
5673 a = a .Next
5774 }
75+ a = reverseList3 (& ListNode {Val : 1 , Next : & ListNode {Val : 2 }})
76+ for a != nil {
77+ fmt .Println (a )
78+ a = a .Next
79+ }
5880}
You can’t perform that action at this time.
0 commit comments