레드 - 블랙 트리 회전의 이해

개요

왼쪽과 오른쪽 레드 - 블랙 트리가 매우 복잡 정보 온라인의 많은 이해하는 것이 더 어렵고, 여기에 내가 단어가 너무 문자 그대로 왼쪽과 오른쪽을 설명하는 생각을 사용합니다. 그것은 사용자가 정보를 검색하는 데 도움이 될 수 있습니다.

이진 검색 트리의 정의

이진 검색 트리 빈 나무 또는 다음과 같은 특성을 갖는 이진 트리입니다 :
왼쪽 서브 트리가 비어 있지 않은 경우 1, 다음, 모든 노드는 루트 노드의 값보다 왼쪽 하위 트리의 값이다;
, 2 오른쪽 아이의 경우 나무가 null는 아니고, 다음 오른쪽 하위 트리의 값은, 모든 노드는 루트 노드의 값보다 큰,
(3), 왼쪽 및 오른쪽 하위 트리 이진 정렬 트리입니다,
4, 아니 노드에 해당하는 키.

레드 - 블랙 트리의 정의

레드 - 블랙 트리가 무엇입니까?

레드 - 블랙 트리 (영어 : 레드 - 블랙 트리), 불균형 이진 검색 트리입니다
왼쪽과 오른쪽 하위 트리의 높이보다 작거나 1과 동일한 지 확인 할 필요없이.

컴퓨터 과학에 사용되는 데이터 구조이며, 통상적 인 사용은 연관 배열을 실현하는 것이다.
그것은, "대칭 진 B-나무"라는 발명 한 루돌프 벨 1972에
현대적인 이름은 1978 년에 레오 J.Guibas 및 RobertSedgewick 쓴 에세이에서 유래.
레드 - 블랙 트리 구조는 복잡하지만 좋은 최악의 경우 운영 실행 시간, 가지고
실천하고 효율적인 :이 (logN) 시간을 찾아 삽입하고 O에서 삭제 할, 수있다
N-곳 트리의 요소 수.

특성 레드 - 블랙 트리

레드 - 블랙 트리, 각 노드는 컬러 속성이 이진 검색 트리입니다 색상은 빨간색이나 검은 색입니다.
우리는 다음과 같은 추가 요구 사항을 추가 한 유효 레드 - 블랙 트리에 대한 공통 필수 요구 사항 외부 이진 검색 트리에서 :

1, 노드는 빨간색이나 검은 색입니다.
2 루트는 검은 색입니다.
3, 모든 잎 (잎 노드가 NIL입니다) 검은 색이다.
4, 각각 빨간색 노드는 두 개의 검은 색 자식 노드가 있어야합니다. (잎에서 당신이 빨간색 두 개의 연속적인 노드 사이에있을 수 있습니다 근절하기 위해)
각 잎은 검은 색 동일한 수의 노드를 포함 모든 단순 경로를 모든 노드에서, 5.

영상

这些约束确保了红黑树的关键特性:
从根到叶子的最长的可能路径不多于最短的可能路径的两倍长。

회전

L

左旋图解(x左边节点逆时针旋转):
         a                
        / \                               
       b   x      ->        x
          / \              / \
         c   d            a   d
                         / \  
                        b   c

도는 X를 중심으로, 부모 노드는이 좌측 형제 노드 B이고, 왼쪽 아이는 C, D는 우측 자식 노드이다

L X가 상수 D 우측 자식 노드를 보장하는 직접 노드 (X)의 좌측 노드의 반 시계 방향 회전과 관련된다, 즉, A는, B는 C에
L 프로세스는 x의 상위는, B가 회전 반대 왼쪽 형제 노드 인 ,
원래 좌측 노드 C의 X (X)의 부모 노드에 대한 대안이다
원래 좌측 자식 노드 X (C) X는 원래 친 노드의 우측 자식 번역 후 반 시계 방향이된다.

 

오른 손잡이의

右旋图解(x右边节点顺时针旋转):
         a            
        / \             
       x   b      ->      x  
      / \                / \                  
     d   c              d   a
                           / \
                          c   b

(X)을 중심으로도가, 부모 노드 A는 노드 형제 오른쪽이 B이고, d는 왼쪽 아이 오른쪽 자식 노드 C는이다
오른손과 좌측 자식 노드 X의 D 정수를 직접 X 방향 회전에 관련되도록한다 오른쪽 노드, 즉, B가 C의
포도당 처리 X는 친 노드 A는 노드 B 형제 오른쪽뿐만 아니라 우측 자식 노드 C는 시계 방향으로 회전된다.
원래 오른쪽 상위 노드 X (C) X 대안 인
부모 노드 X (C) 방향으로 좌측 자식 노드 X 원래의 오리지널 우측 후방 부에 번역.

추천

출처www.cnblogs.com/geektcp/p/11520014.html