Tree: Inorder Traversal | HackerRank
Tree: Inorder Traversal | HackerRank
Print the inorder traversal of a binary tree.
www.hackerrank.com
<문제>

input으로 들어온 트리를 inorder 방식으로 출력하는 문제이다.
<코드>
void inOrder( struct node *root) {
if (root)
{
inOrder(root->left);
printf("%d ",root->data);
inOrder(root->right);
}
}
<풀이>
저번의 postorder과는 다르게 inorder은 left->root->right, 왼쪽 자식 노드, 부모 노드, 오른쪽 자식 노드 순서로 살펴본다. 이번에도 재귀호출 방법을 사용해 문제를 풀었다. root가 null이 아닐때까지 inOrder(root->left)를 재귀호출하여 트리의 가장 왼쪽에 있는 노드로 도착하고 데이터값을 출력한다. 이후에는 오른쪽으로 이동하면서 출력하여 문제를 풀 수 있었다.
<실행결과>

'c언어 스터디 > HackerRank' 카테고리의 다른 글
| [HackerRank] Equal Stacks (0) | 2021.11.07 |
|---|---|
| [HackerRank] Printing Tokens (0) | 2021.11.07 |
| [hackerrank] Students Marks Sum (0) | 2021.10.10 |
| [HackerRank] Bitwise Operators (0) | 2021.10.02 |
| [HackerRank] Tree: Postorder Traversal (0) | 2021.10.02 |