이진탐색트리에서
연분홍
2024.12.07
데이터값이 정수로 이루어진 이진탐색트리가 있다고 가정하고.
특정 정수를 키보드로부터 입력받아서
그 정수보다 크거나 작은 값들을 출력하려고할때.
이진탐색트리를 전위순회를 하든, 후위순회를 하든, 중위순회를 하든, 트리의 모든 노드를 들린다음 입력받은 값과 비교해서 참일경우 출력하는 방법이 정석적인 방법인가요?
아니면 좀더 나은 방법이나 정석적인 방법이 있나요?
-
총알탄 2024-12-07
정렬일 경우를 기준으로...
중위순회로 큰값은 upper bound까지 왼쪽자식먼저, 작은 값은 lower bound까지 오른쪽자식먼저 탐색해나가면 원하는 값들만 구할 수 있습니다... -
LimeTree 2024-12-07
..............4
....3...................7
.1.....2.............5....9 -
찬슬 2024-12-07
이진트리로 하는 이유가 검색을빠르게 하기위해서 이기때문에..
보통 이진트리가 같는 값들은 루트를 기준으로 작은값은 왼쪽 큰값은 오른쪽에 위치하게됩니다.
같은값도 갖지게 합니다.
그렇게 레벨이 증가할때도 똑같이 부모노드보다 작은값은 왼쪽 큰값은 오른쪽으로 하게되면...
검색시 루트보다 큰가 작은가 같은가 비교하고
작은가 큰가 비교하고....... 이런식으로 비교해서 같으면 출력하고 아님 못찾은거고...
이런식이기때문에 모든 노드를 거칠 필요가없습니다.
번호 | 제 목 | 글쓴이 | 날짜 |
---|---|---|---|
2694012 | 전공 비전공자 개발자 (10) | 말글 | 2025-05-07 |
2693984 | 오버로딩이 무엇인가요? (2) | 헛매질 | 2025-05-07 |
2693956 | PlaySound재생이 안됩니다!(C에 음악넣기) | 지존 | 2025-05-06 |
2693928 | &와 *의 사용에 관한 명확한 이해 | 제나 | 2025-05-06 |
2693903 | 반복문 설명좀요 ㅠㅠ (2) | 란새 | 2025-05-06 |
2693869 | stdio.h 는 왜 쓰는건가요? (1) | 큰꽃들 | 2025-05-06 |
2693842 | 포인터 변수의 주소값끼리 더하는 것에 대해서 질문드립니다. (1) | 진솔 | 2025-05-05 |
2693811 | 소수 출력;;;; | 화이트캣 | 2025-05-05 |
2693788 | 이런 함수는 없나요? (3) | 앤드류 | 2025-05-05 |
2693758 | txt파일 불러와서 행렬로 저장 | 큰애 | 2025-05-05 |
2693727 | scanf 오류 문제!! (2) | 큰나래 | 2025-05-04 |
2693704 | 구조체 주소록 문제인데 도와주세요 (2) | 도1도캣 | 2025-05-04 |
2693676 | 열혈강의 c언어 질문입니다 | 하양이 | 2025-05-04 |
2693647 | 12.620000 을요 12.620 으로 어떻게 표현해요? (2) | 파도 | 2025-05-04 |
2693619 | 타이틀 코드.. | 단순드립 | 2025-05-03 |
2693591 | 컴파일 에러에서 질문드립니다 (3) | 게자리 | 2025-05-03 |
2693463 | 동적할당 이용시 fwrite사용을 어떻게 해야하나요..? (10) | 일본어못해요 | 2025-05-02 |
2693387 | 배열문제입니다 수정오류캡쳐했습니다 (6) | 연하얀 | 2025-05-01 |
2693356 | text 입출력 내림차순 질문입니다 ㅠ | 빛글 | 2025-05-01 |
2693328 | C언어를이용해서 .txt파일 외에 다른 확장자 파일 삭제가 가능한지.. (2) | 대나무 | 2025-05-01 |