1991.트리순회

jeongjeong2·2022년 11월 1일
0

For coding test

목록 보기
2/59
  1. python - string strip(), rstrip(), lstrip()

    • strip() : string의 앞, 뒤 공백을 제거
    • rstrip() : string의 오른쪽 공백을 제거
    • lstrip() : string의 왼쪽 공백을 제거
  2. tree 구현은 dictionary를 이용

  3. print 출력 시 줄바꿈 없애는 법

    • python에서는 print("Jhyunyee")가 사실은 print("Jhynyee", end='\n')으로 되어 있어서 여러 줄의 print를 사용하면 자동으로 줄바꿈이 생긴다.
    • end=''로 바꿔주면 줄바꿈은 자동으로 생기지 않는다.
import sys
input = sys.stdin.readline
tree={}

N=int(input())

for n in range(N):
    root, left, right = input().split()
    tree[root] = [left, right]

def pre(root):
    if root != '.':
        print(root, end='')
        pre(tree[root][0])
        pre(tree[root][1])

def inorder(root):
    if root != '.':  #root =='.'이면 다음 줄 진행
        inorder(tree[root][0])
        print(root, end='')
        inorder(tree[root][1])

def postorder(root):
    if root != '.':
        postorder(tree[root][0])
        postorder(tree[root][1])
        print(root, end='')

pre('A')
print()#pre와 inorder 사이의 줄바꿈
inorder('A')
print()#inorder과 postorder 사이의 줄바꿈
postorder('A')
        

0개의 댓글