lc 면접 준비: Invert Binary Tree
1441 단어 binary
제목
Invert a binary tree.
4
/ \
2 7
/ \ / \
1 3 6 9
to 4
/ \
7 2
/ \ / \
9 6 3 1
인터페이스:public TreeNode invertTree(TreeNode root)
2 사고방식
두 갈래 나무를 반전시키다.귀속과 비귀속 두 가지 방법으로 풀 수 있다.
4
/ \
2 7
/ \ / \
1 3 6 9
4
/ \
7 2
/ \ / \
9 6 3 1
두 갈래 나무를 반전시키다.귀속과 비귀속 두 가지 방법으로 풀 수 있다.
Queue
보조하기 위해 먼저 뿌리 노드를 대열에 배열한 다음에 대열에서 꺼내서 좌우 노드를 교환하고 존재하면 각각 좌우 노드를 대열에 배열한다. 이런 식으로 대열에 노드가 있을 때까지 순환을 멈추고 루트로 돌아가면 된다복잡도: 두 가지 방법의 시간과 공간 복잡도와 마찬가지로 Time O(n).Space O(n)
3 코드
public TreeNode invertTree(TreeNode root) {
if (root == null)
return root;
TreeNode tmp = root.left;
root.left = invertTree(root.right);
root.right = invertTree(tmp);
return root;
}
4 총결산
두 갈래 나무의 범람을 고찰하다.비귀속의 실현, 복습.비귀속을 실현하십시오.
5 참조
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
이진 트리의 경계 순회은 중복 노드 없이 왼쪽 경계, 잎, 오른쪽 경계를 포함하지만 노드의 값은 중복을 포함할 수 있습니다. 루트 노드에 왼쪽 및 오른쪽 하위 트리가 포함되어 있지 않으면 루트 노드 자체가 왼쪽 경계 또는 오른쪽 경계로 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.