이진탐색트리 알고리즘 구현 실습
본 자료는 1페이지 의 미리보기를 제공합니다. 이미지를 클릭하여 주세요.
닫기
  • 1
  • 2
  • 3
  • 4
  • 5
해당 자료는 1페이지 까지만 미리보기를 제공합니다.
1페이지 이후부터 다운로드 후 확인할 수 있습니다.

소개글

이진탐색트리 알고리즘 구현 실습에 대한 보고서 자료입니다.

본문내용


bst.level_print();//t2 tree의 레벨 출력
cout<<\"---------------------------------------\"< return 0;
}
[출력결과]
[분석 및 소감]
이번 실습은 랜덤하게 입력받은 배열을 트리로 입력을 해서 트리를 생성한 후에 배열의 각 값을 하나씩 검색한 후 비교 횟수를 분석하는 것이었는데 결과화면을 통해서 보면 평균비교횟수가 8.6이 나온 것을 알 수 있는데 이것은 트리의 장점으로 어떤 key값을 비교를 해서 크면 오른쪽 노드로 작으면 왼쪽노드로 이동을 하기 때문에 하나 하나 비교하는 것보다 훨씬 비교횟수를 줄일 수가 있다. 마지막으로 최대값을 찾기 위해서는 head노드에서 계속 right child를 따라 내려가면서 z노드를 만나면 멈춰서 그 값과 그 레벨을 출력하면되고 마찬가지로 최소값은 left child를 따라 내려가면 된다.
t1을 inorder한 후 출력하면서 그 값을 다시 배열에 받아서 그 배열을 BSTinsert()함수를 이용해서 트리를 만들면 결과화면의 t2 레벨 출력을 보면 알 수 있듯이 0을 root으로 하면서 점점 오른쪽으로 뻣어나가는 한 방향 트리가 된 것을 알 수있다. 또한 그 트리에 배열값을 하나하나 검색한 후 평균 비교횟수를 보면 t1의 평균비교횟수보다 2배 이상으로 많이 나온 것을 알 수 있다. 이 이유는 레벨이 제일 마지막인 key값을 찾기 위해서는 레벨 0부터 마지막 레벨 max값까지 n번을 비교를 해야 하기 때문이다.
이렇게 한 방향으로 치우 친 트리는 트리의 기능을 제대로 못한다고 할 수있다.
  • 가격1,900
  • 페이지수5페이지
  • 등록일2020.12.09
  • 저작시기2007.7
  • 파일형식한글(hwp)
  • 자료번호#1141781
본 자료는 최근 2주간 다운받은 회원이 없습니다.
다운로드 장바구니