문제로
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
| /**
* Example:
* var ti = TreeNode(5)
* var v = ti.`val`
* Definition for a binary tree node.
* class TreeNode(var `val`: Int) {
* var left: TreeNode? = null
* var right: TreeNode? = null
* }
*/
class Solution {
fun invertTree(root: TreeNode?): TreeNode? {
if(root == null) return null;
invertTree(root.left)
invertTree(root.right)
var temp = root.left
root.left = root.right
root.right = temp
return root
}
}
|
전위탐색
1. 현재 노드
2. 왼쪽 서브트리
3. 오른쪽 서브트리
중위탐색
1. 왼쪽 서브트리
2. 현재 노드
3. 오른쪽 서브트리
후위탐색
1. 왼쪽 서브트리
2. 오른쪽 서브트리
3. 현재 노드
TODO. 전위,중위,후위 탐색이 필요한 경우 각각 공부해놓기