Table of Contents
バランス係数は、AVLツリーの重要な概念であり、バイナリ検索ツリーの自己バランス型です。ツリーの高さを維持し、検索、インサート、削除などの効率的な操作を保証します。バランス係数を計算し、適用する方法を理解して、AVLツリーを効果的に管理する必要があります。
バランスファクターとは?
AVLツリー内のノードの残高要因は、その左と右下図の高さの違いです。次のように計算されます。
[]バランスファクター = 左下の高さ - 右下の高さ
ノードの残高要因は、ツリーがバランスをとるために-1、0、または1であることができます。 バランス係数がこれらの値を超えた場合は、ツリーは回転を介して再バランスを必要とします。
バランスファクターの計算
バランス要因を決定するには、まずノードの子で根ざした各サブツリーの高さを見つけます。高さは、ノードから一番長いパスのエッジの数です。 左サブツリーの高さから、バランス係数を取得するのに適切なサブツリーの高さを割ってください。
例えば、左サブツリーが高さ3と右サブツリーが高さ1を持っている場合、バランス係数は2で、ノードがバランスが取れず回転が必要である。
バランスファクターのアプリケーション
ノードの残高要因は、AvLツリーの残高を維持するために、インサートと削除の間に使用されます。 ノードの残高要因が-1から1の範囲外になると、残高を回復するために回転が行われます。 これらの回転は次のとおりです。
- 単一の右回転
- 単一の左の回転
- 左右回転
- 右左回転
これらの操作は、ツリーの高さを最小限に抑え、検索操作に最適な性能を確保するのに役立ちます。