Những cây tìm kiếm nhị phân cân bằng là cấu trúc dữ liệu được sắp xếp và đảm bảo các hoạt động hiệu quả như tìm kiếm, chèn và xoá bỏ. hai loại thông thường là cây AVL và cây đỏ-Black, mỗi loại với các nguyên tắc cân bằng độc đáo mà hiệu quả tối ưu hóa.

Cây AVL

Cây AVL tự tự bảo vệ cây tìm kiếm nhị phân nơi sự khác biệt về chiều cao giữa các cây phụ bên trái và bên phải của bất kỳ nút nào là ở phần lớn một. Tính cân bằng nghiêm ngặt này đảm bảo thời gian tìm kiếm nhanh hơn nhưng cần nhiều vòng trong việc chèn và xoá để duy trì cân bằng.

Khi một nút trở nên không cân bằng sau một cuộc phẫu thuật, các xoay được thực hiện để phục hồi tài sản AVL. Những vòng xoay này bao gồm các xoay đơn và vòng đôi, giúp duy trì sự khác biệt chiều cao ép buộc.

Cây đỏ- đen

Cây màu đỏ là một loại cây tìm kiếm nhị phân tự bảo vệ, chỉ định màu sắc (đã được chọn hay đen). Các quy tắc tô màu đảm bảo cây được cân bằng xấp xỉ, không có đường dẫn nào từ rễ đến lá dài gấp đôi các điểm khác.

Thuộc tính khóa bao gồm:

  • Mỗi nút là màu đỏ hoặc đen.
  • Gốc rễ luôn đen.
  • Sao chổi đỏ không thể có con đỏ.
  • Mỗi con đường từ một nút đến những cái nút sau lá chứa cùng một số nút đen.

Những tính chất này cho phép cây màu đỏ- đen thực hiện chèn và xoá hiệu quả trong khi duy trì cân bằng thông qua màu và quay.

So sánh giữa cây AVL và cây Red-Black

Cây AVL và cây Red-Black đều có mục tiêu giữ cho cây cân bằng cho hiệu suất tối ưu. Cây AVL có xu hướng cân bằng chặt chẽ hơn, cung cấp xem xét nhanh hơn, nhưng có thể cần nhiều quay hơn trong lúc cập nhật. Cây Red-Black ít nghiêm ngặt hơn, cung cấp các chèn nhanh hơn và giảm hiệu quả với việc xem xét chậm hơn một chút.