본문 바로가기
공부/개발노트

[C/C++] 바이너리 트리를 활용한 검색 알고리즘

반응형


출처 : http://blog.eairship.kr/215


 위 그림을 보고 트리 계층 구조라고한다. 1을 부모로드라고한다. 1 아래 있는 것을 자식 로드입니다. 흔히 루트 노드, 잎 노드라고 표현을 합니다. 예를 들어봅시다. 루트 노드인 1의 자식 노드는 2, 3이 자식로드 다시 루트 노드를 2로 설정하게되면 자식 노드는 4, 5가 됩니다. 정보처리산업기사에 나오는 구조입니다. 저 중에 하나가 없다하더라도 번호 부여가 되야합니다.



위 그림처럼 번호가 부여되야되고, -1 즉 Null값을 입력해서 공백을 두고 종료를 의미하게 코드를 짜시면됩니다. 반드시 Null값이 나올 때까지 트리를 그려야합니다. C에서도 Null값이 2개가 나옵니다. 위 그림의 배열 수는 총 8개입니다. 


이진트리를 이용해서 탐색 알고리즘 짜기


preoderTraverse 부분



inpreoderTraverse 부분



PostoderTraverse 부분



메인 부분



결과



반응형