코딩테스트[파이썬]/알고리즘 문제풀이 입문

[DFS기초]-이진트리순회

softmoca__ 2024. 2. 10. 02:12
목차

이진트리 순회(깊이우선탐색)

아래 그림과 같은 이진트리를 전위순회와 후위순회를 연습해보세요.

전위순회 출력 : 1 2 4 5 3 6 7

중위순회 출력 : 4 2 5 1 6 3 7

후위순회 출력 : 4 5 2 6 7 3 1

 

전위 순회

def DFS(v):
    if v>7:
        return
    else:  
        print(v, end=' ')
        DFS(v*2)
        DFS(v*2+1)
        
if __name__=="__main__":
    DFS(1)

 

 

중위 순회

def DFS(v):
    if v>7:
        return
    else:  
  
        DFS(v*2)
        print(v, end=' ')
        DFS(v*2+1)
        
if __name__=="__main__":
    DFS(1)

 

후위 순회

def DFS(v):
    if v>7:
        return
    else:  
        
        DFS(v*2)
        DFS(v*2+1)
        print(v, end=' ')
        
if __name__=="__main__":
    DFS(1)