반응형
Leetcode
https://leetcode.com/problemset/all/
천천히 읽어보셔영
왼쪽 노드에 값이 없으면 Root 삽입 코드는 간단합니다.
이해하고 기록해두고 비슷한 문제가나왔을때 참고할수있는 형태로 기록해두면될것 같습니다.
package com.codeing.code.leetcode;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
/**
* leetcode : https://leetcode.com/problems/binary-tree-inorder-traversal/
* 난이도 : easy
*/
public class BinaryTreeInorder {
public class TreeNode {
int val;
TreeNode left;
TreeNode right;
TreeNode() {}
TreeNode(int val) { this.val = val; }
TreeNode(int val, TreeNode left, TreeNode right) {
this.val = val;
this.left = left;
this.right = right;
}
}
List<Integer> list = Collections.emptyList();
/**
* Definition for a binary tree node.
* public class TreeNode {
* int val;
* TreeNode left;
* TreeNode right;
* TreeNode() {}
* TreeNode(int val) { this.val = val; }
* TreeNode(int val, TreeNode left, TreeNode right) {
* this.val = val;
* this.left = left;
* this.right = right;
* }
* }
*/
public List<Integer> inorderTraversal(TreeNode root) {
list = new ArrayList<Integer>();
inorder(root);
return list;
}
public void inorder(TreeNode node){
if(node !=null){
if(node.left !=null) inorder(node.left);
list.add(node.val);
if(node.right !=null) inorder(node.right);
}
}
}
Github 링크 공유드립니다.
'프로그래밍언어 > 알고리즘' 카테고리의 다른 글
개발자 면접 알고리즘 공부 시작하는 방법, 1-2개월만에 갑자기 잘할수는 없습니다. (0) | 2022.11.12 |
---|---|
Leetcode 문제풀이 난이도 Easy Two Sum Java (0) | 2022.09.15 |
알고리즘 8편 Hash 난이도3 베스트앨범 lamda 함수형 코틀린(kotlin) 으로 시작하는 문제해결방법 (0) | 2021.10.04 |
알고리즘 7편 Hash 난이도2 key value 위장 의상경우의수 코틀린(kotlin) 으로 시작하는 문제해결방법 (0) | 2021.09.21 |
알고리즘 6편 Hash 로 2개 배열 중복값 찾고 지우기 코틀린(kotlin) 으로 시작하는 문제해결방법 (0) | 2021.09.18 |