dummy 노드 (즉, 실제로 null 포인터 인 리프 노드)를 사용하지 않고 red-black-tree에서 요소 삭제를 구현하는 방법을 안내를 찾고 있습니다. google/wikipedia 및 표준 문학 (sedgewick 및 cormen al)에서 발견 된 모든 구현은 더미 NIL 노드를 사용하고 있으므로 피하고 싶습니다.빨간색 검은 색 트리 - dummys가없는 요소 제거
2
A
답변
2
삽입시 Okasaki의 이중 빨간색 제거 기능이 기본적으로 작동합니다. 평소와 같이 BST에 넣고 뿌리까지 두 배의 붉은 색을 계속 제거하십시오.
빨간색 노드를 삭제해도 문제가 발생하지 않습니다. BST에서 두 명의 하위 노드가있는 노드는 절대 삭제하지 않습니다. 하나의 자식이있는 검은 노드를 삭제하면 자식을 검정색으로 채우고 완료됩니다. 검은 잎 (실물이 아닌 더미)을 삭제하는 것만이 문제가됩니다. Matt Might's approach은 더미 노드없이 작업 할 수 있습니다. 트릭은 매트의 "버블 링"을 사용하여 잎을 빨간색으로 변 환하는 것입니다. 그런 다음 간단히 제거하십시오.
Here은 코드가 포함 된 솔루션입니다.
관련 문제
- 1. 자바 페인트 문제 - 검은 색 구성 요소
- 2. 리눅스 커널 - 붉은 색/검은 색 나무
- 3. 검은 색 하위보기가 피커보기
- 4. LWJGL - 검은 색 화면
- 5. MapView와 검은 색 화면
- 6. 맞춤법 검사 (검은 색)
- 7. 이미지의 검은 색 픽셀
- 8. 검은 색 불투명도가있는 JWindow
- 9. UITableView의 이상한 검은 색 막대
- 10. WebView가 검은 색 화면을 표시합니다.
- 11. GLUT_SINGLE은 검은 색 화면을 표시합니다.
- 12. 안드로이드에서 검은 색 화면이 표시됩니다.
- 13. applicationWillEnterForeground 후 검은 색 화면
- 14. 검은 색 텍스트의 배경으로 보이는 무작위 흰색 이외의 색
- 15. 트리 뷰 노드 색 변경
- 16. 초기 재생시 JWPlayer 검은 색 화면
- 17. Silverlight 검은 색 테두리가있는 흰색 텍스트?
- 18. 검은 색 바탕에 이미지가있는 이미지를 표시합니다.
- 19. 기기 방향이 바뀌면 검은 색 화면이 나타납니다.
- 20. iphone mpmovieplayercontroller 검은 색 배경을 보여주는 mp3
- 21. iPhone NSDictionary에 Plist가 검은 색 화면을 표시합니다.
- 22. 출력 미리보기 이미지의 하단에 검은 색 사각형
- 23. IOS : UIDatePicker가 검은 색 배경으로 잘못 렌더링됩니다.
- 24. VB.NET - 검은 색 영역을 표시하는 리본
- 25. 흰색 배경에 검은 색 진행률 막대가 표시됩니까?
- 26. 시간 아래에 검은 색 픽셀이 있습니까?
- 27. 안드로이드리스트 뷰 까다로운 검은 색 라인
- 28. blackberery 검은 색 테두리가없는 팝업 창이 있습니다.
- 29. Webview in TabHost = 검은 색 화면으로 시작
- 30. MFC 대화 상자가 검은 색 상자로 나타납니다.