CÂY TÌM KIẾM NHỊ PHÂN

Một trong các ứng dụng quan trọng nhất của cây nhị phân là sử dụng cây nhị phân để tổ chức dữ liệu. Trong các chương trình, thông thường chúng ta cần phải lưu một tập các dữ liệu, rồi thường xuyên phải thực hiện cá phép toán: tìm kiếm dữ liệu, cập nhật dữ liệu... Trong các chương 4 và 5, chúng ta đã nghiên cứu sự cài đặt KDLTT tập động (một tập dữ liệu với các phép toán tìm kiếm, xen, loại...) bởi danh sách. Nếu tập dữ liệu được lưu trong DSLK thì các phép toán tìm kiếm, xen, loại, ... đòi hỏi thời gian O(n),
trong đó n là số dữ liệu. Nếu tập dữ liệu được sắp xếp thành một danh sách theo thứ tự tăng (giảm) theo khóa tìm kiếm, và danh sách này được lưu trong mảng, thì phép toán tìm kiếm chỉ đòi hỏi thời gian O(logn) nếu sử dụng kỹ thuật tìm kiếm nhị phân (mục 4.4), nhưng các phép toán xen, loại vẫn cần thời gian O(n). Trong mục này, chúng ta sẽ nghiên cứu cách tổ chức một tập dữ liệu dưới dạng cây nhị phân, các dữ liệu được chứa trong các đỉnh của cây nhị phân theo một trật tự xác định, cấu trúc dữ liệu này cho phép ta cài đặt các phép toán tìm kiếm, xen, loại,... chỉ trong thời gian O(h), trong đó h là độ cao của cây nhị phân.

8.4.1 Cây tìm kiếm nhị phân

Giả sử chúng ta có một tập dữ liệu, các dữ liệu có kiểu Item nào đó chứa một thành phần được lấy làm khóa tìm kiếm. Chúng ta giả thiết rằng các giá trị khóa có thể sắp thứ tự tuyến tính, thông thường các giá trị khóa là các số nguyên, các số thực, các ký tự hoặc xâu ký tự. Chúng ta sẽ lưu tập dữ liệu đó trong một cây nhị phân (khóa của dữ liệu được nói tới như là khóa của một đỉnh) theo trật tự như sau: giá trị khóa của một đỉnh bất kỳ lớn hơn các giá trị khóa của tất cả các đỉnh ở cây con trái của đỉnh đó và nhỏ hơn các giá trị khóa của tất cả các đỉnh ở cây con phải của đỉnh đó. Do đó, chúng ta có định nghĩa sau:
Cây tìm kiếm nhị phân (binary search tree) là cây nhị phân thỏa mãn tính chất sau: đối với mỗi đỉnh x trong cây, nếu y là đỉnh bất kỳ ở cây con trái của x thì khóa của x lớn hơn khóa của y, còn nếu y là đỉnh bất kỳ ở cây con phải của x thì khóa của x nhỏ hơn khóa của y.
Ví dụ. Chúng ta xét các cây nhị phân với các giá trị khoá của các đỉnh là các số nguyên. Các cây nhị phân trong hình 8.11 là các cây tìm kiếm nhị phân. Chúng ta có nhận xét rằng, các cây tìm kiếm nhị phân trong hình 8.11 biểu diễn cùng một tập hợp dữ liệu, nhưng cây trong hình 8.11a có độ cao là 3, cây trong hình 8.11b có độ cao là 4, còn cây trong hình 8.11c có tất cả các cây con trái của các đỉnh đều rỗng và nó có độ cao là 6. Một nhận xét quan trọng khác là, nếu chúng ta duyệt cây tìm kiếm nhị phân theo thứ tự trong, chúng ta sẽ nhận được một dãy dữ liệu được sắp xếp theo thứ tự khóa tăng dần. Chẳng hạn, với các cây tìm kiếm nhị phân trong hình 8.11, ta có dãy các giá trị khóa là 1, 3, 4, 5,7, 9.

Hình 11. Các cây tìm kiếm nhị phân
 
Chúng ta cũng có thể định nghĩa cây tìm kiếm nhị phân bởi đệ quy như sau:
• Cây nhị phân rỗng là cây tìm kiếm nhị phân
• Cây nhị phân không rỗng T là cây tìm kiếm nhị phân nếu:
1. Khóa của gốc lớn hơn khóa của tất cả các đỉnh ở cây con trái TLvà nhỏ hơn khóa của tất cả các đỉnh ở cây con phải TR.
2. Cây con trái TL và cây con phải TR là các cây tìm kiếm nhị phân.
Sử dụng định nghĩa đệ quy này, chúng ta dễ dàng đưa ra các thuật toán đệ quy thực hiện các phép toán trên cây tìm kiếm nhị phân, như chúng ta sẽ thấy trong mục sau đây.
 
8.4.2 Các phép toán tập động trên cây tìm kiếm nhị phân
Bây giờ chúng ta xét xem các phép toán tập động (tìm kiếm, xen, loại, ...) sẽ được thực hiện như thế nào khi mà tập dữ liệu được cài đặt bởi cây tìm kiếm nhị phân. Chúng ta sẽ chỉ ra rằng, các phép toán tập động trên cây tìm kiếm nhị phân chỉ đòi hỏi thời gian O(h), trong đó h là độ cao của cây. Như độc giả đã thấy trong hình 8.12, một tập dữ liệu có thể lưu trong các cây tìm kiếm nhị phân có độ cao của cây có thể là n, trong đó n là số dữ liệu. Như vậy, trong trường hợp xấu nhất thời gian thực hiện các phép toán tập động trên cây tìm kiếm nhị phân là O(n). Tuy nhiên, trong mục 8.5 chúng ta sẽ chứng tỏ rằng, nếu cây tìm kiếm nhị phân được tạo thành bằng cách xen vào các dữ liệu được lấy ra từ tập dữ liệu một cách ngẫu nhiên, thì thời gian trung bình của các phép toán tập động là O(logn). Hơn nữa, bằng cách áp dụng các kỹ thuật hạn chế độ cao của cây, chúng ta có thể đảm bảo thời gian logarit cho các phép toán tập động trên cây tìm kiếm nhị phân (xem chương 11)
Dưới đây chúng ta sẽ đưa ra các thuật toán thực hiện các phép toán tập động trên cây tìm kiếm nhị phân. Chúng ta sẽ mô tả các thuật toán bởi các hàm dưới dạng giả mã . Trong các thuật toán, chúng ta sẽ sử dụng các ký hiệu sau đây: T là cây tìm kiếm nhị phân có gốc là root, dữ liệu chứa ở gốc được ký hiệu là rootData, cây con trái của gốc là T L , cây con phải của gốc là T R ; v là một đỉnh, dữ liệu chứa trong đỉnh v được ký hiệu là data(v), đỉnh con trái của v là leftChild(v), đỉnh con phải là rightChild(v); dữ liệu trong các đỉnh có kiểu Item, khóa của dữ liệu d được ký hiệu là d.key.
 
Phép toán tìm kiếm. Cho cây tìm kiếm nhị phân T, để tìm xem cây T có chứa dữ liệu với khóa k cho trước hay không, chúng ta kiểm tra xem gốc có chứa dữ liệu với khóa k hay không. Nếu không, giả sử k < rootData.key, khi đó do tính chất của cây tìm kiếm nhị phân, dữ liệu với khóa k chỉ có thể chứa trong cây con trái của gốc, và do đó, ta chỉ cần tiếp tục tìm kiếm trong cây con trái của gốc. Tương tự, nếu k > rootData.key, sự tìm kiếm được hạn chế trong phạm vi cây con phải của gốc. Từ đó, ta có thuật toán tìm kiếm đệ quy sau:
bool Search(T, k)
// Tìm dữ liệu với khóa k trong cây tìm kiếm nhị phân
// Hàm trả về true (false) nếu tìm thấy (không tìm thấy)
{
  if (T rỗng)
    return false;
  else if (rootData.key = = k)
    return true;
  else if (k < rootData.key)
    Search(T L, k);
  else
    Search(T R, k)’
}
Phân tích thuật toán đệ quy trên, chúng ta dễ dàng đưa ra thuật toán tìm kiếm không đệ quy. Sử dụng biến v chạy trên các đỉnh của cây T bắt đầu từ gốc. Khi v là một đỉnh nào đó của cây T, chúng ta kiểm tra xem đỉnh v có chứa dữ liệu với khóa k hay không. Nếu không, tùy theo khóa k nhỏ hơn (lớn hơn) khóa của dữ liệu trong đỉnh v mà chúng ta đi xuống đỉnh con trái (con phải) của v. Thuật toán tìm kiếm không đệ quy là như sau:
bool Search(T, k) {
  if (T rỗng)
    return false;
  else {
    v = root;
    do {
      if (data(v).key = = k)
        return true;
      else if (k < data(v).key)
        if (v có con trái)
          v = leftchild(v);
        else return false;
      else
      if (v có con phải)
        v = rightchild(v);
      else return false;
    }
    while (1);
  }
}

Các đỉnh mà biến v chạy qua tạo thành một đường đi từ gốc hướng tới một lá của cây. Trong trường hợp xấu nhất, biến v sẽ dừng lại ở một đỉnh lá.
Bởi vì độ cao của cây là độ dài của đường đi dài nhất từ gốc tới lá, do đó thời gian của phép toán Search là O(h). Chúng ta nhận thấy có sự tương tự giữa kỹ thuật tìm kiếm nhị phân (xem 4.4) và kỹ thuật tìm kiếm trên cây tìm kiếm nhị phân. Trong quá trình tìm kiếm trên cây tìm kiếm nhị phân , tại mỗi thời điểm chúng ta hạn chế tìm kiếm ở cây con trái hoặc ở cây con phải; còn trong tìm kiếm nhị phân chúng ta tiếp tục tìm kiếm ở nửa bên trái hay nửa bên phải của mảng. Tuy nhiên trong tìm kiếm nhị phân, tại mỗi thời điểm không gian tìm kiếm (mảng) được chia đôi, nửa bên trái và nửa bên phải bằng nhau; điều đó đảm bảo thời gian trong tìm kiếm nhị phân là O(logn). Nhưng trong cây tìm kiếm nhị phân, cây con trái và cây con phải có thể có số đỉnh rất khác nhau, do đó nói chung thời gian tìm kiếm trên cây tìm kiếm nhị phân không phải là O(logn), chỉ có thời gian này khi mà cây tìm
kiếm nhị phân được xây dựng “cân bằng” tại mọi đỉnh.
 
Minh họa hoạt động cây nhị phân https://cuuduongthancong.com/~galles/visualization/BST.html
 
 
 

Bài viết liên quan

Tài Liệu Cấu Trúc Dữ Liệu Và Giải Thuật Đh Công Nghệ Thông Tin - Đhqghcm
Tài Liệu Cấu Trúc Dữ Liệu Và Giải Thuật Đh Công Nghệ - Đhqghn
Tài Liệu Cấu Trúc Dữ Liệu Và Giải Thuật Đh Khtn Hcm
Cây B-Tree - Uit
Cây Đỏ Đen - Uit
Cấu Trúc Cây
Bảng Băm/hàm Băm/giải Quyết Sự Xung Đột
Bảng Băm/lý Thuyết Đồng Dư/xử Lý Đụng Độ/phương Pháp Địa Chỉ Mở/phương Pháp Băm Hoàn Hảo
Cấu Trúc Mảng (Arrays)/các Thuật Toán Sắp Xếp Trên Cấu Trúc Mảng
Cấu Trúc Cây (Trees)/cây Nhị Phân/cây Tổng Quát/ứng Dụng Cây Trong Heap-Sort
Cấu Trúc Dữ Liệu Cây Aa - Đh Khtn
Cấu Trúc Dữ Liệu Cây Đỏ Đen - Đh Khtn
Giới Thiệu Về Cơ Sở Dữ Liệu Phân Tán
Giới Thiệu Về Thuật Toán/tính Chất Của Thuật Toán/chứng Minh Thuật Toán Đúng/biểu Diễn Thuật Toán
Đồ Thị/các Khái Niệm Cơ Bản/biểu Diễn Đồ Thị/thuật Toán Duyệt Đồ Thị Và Ứng Dụng
Cấu Trúc Dữ Liệu Cây (1)
Cấu Trúc Dữ Liệu Ngăn Xếp Và Hàng Đợi
Cấu Trúc Dữ Liệu Mảng Và Danh Sách Liên Kết
Đề Kiểm Tra Cuối Kỳ(1/2018-2019) Môn Thi: Cấu Trúc Dữ Liệu Và Giải Thuật Co2003
Đề Kiểm Tra Cuối Kỳ(2/2018-2019) Môn Thi: Cấu Trúc Dữ Liệu Và Giải Thuật Co2003
Đề Thi Cấu Trúc Dữ Liệu Giải Thuật Khtn Hcm 2009-2021
Cấu Trúc Cây - Cấu Trúc Dữ Liệu Và Giải Thuật - Hcmus 2011
Source Code Các Cấu Trúc Dữ Liệu Và Giải Thuật Được Cài Đặt Bằng Rất Nhiều Ngôn Ngữ Java, Php, C, C++, Javascript, Python, Go,...
Phân Tích Thuật Toán, Tính Hiệu Quả Của Thuật Toán, Ký Hiệu Ô Lớn Và Biểu Diễn Thời Gian Chạy Bởi Ký Hiệu Ô Lớn
Cây Tìm Kiếm Nhị Phân
Bảng Băm, Phương Pháp Băm, Hàm Băm, Cài Đặt Bảng Băm
Cài Đặt Thuật Toán Nén Huffman Bằng Ngôn Ngữ C++
Cài Đặt Thuật Toán Quicksort Bằng Ngôn Ngữ C++
Cây Đỏ Đen
Cây, Cây Nhị Phân, Cây Nhị Phân Tìm Kiếm (1)
Cấu Trúc Dữ Liệu Cây 2-3-4
Cấu Trúc Dữ Liệu Cây Cân Bằng
Thuật Toán Sắp Xếp Sắp Xếp Cây - Heap Sort
Thuật Toán Sắp Xếp Radix Sort
Thuật Toán Sắp Xếp Nhanh - Quick Sort
Bài 3 Bảng Băm (Hash Table)
Danh Sách Liên Kết
Cấu Trúc Mảng (Arrays)
Danh Sách Móc Nối - Danh Sách Liên Kết
Cấu Trúc Danh Sách
Các Khái Niệm Cơ Bản Về Ctdl Và Giải Thuật
Đề Thi Hết Học Phần - Môn Cấu Trúc Dữ Liệu & Giải Thuật Đề Số 25
Đề Thi Hết Học Phần - Môn Cấu Trúc Dữ Liệu & Giải Thuật Đề Số 24
Đề Thi Hết Học Phần - Môn Cấu Trúc Dữ Liệu & Giải Thuật Đề Số 23
Đề Thi Hết Học Phần - Môn Cấu Trúc Dữ Liệu & Giải Thuật Đề Số 22
Đề Thi Hết Học Phần - Môn Cấu Trúc Dữ Liệu & Giải Thuật Đề Số 21
Đề Thi Hết Học Phần - Môn Cấu Trúc Dữ Liệu & Giải Thuật Đề Số 20
Đề Thi Hết Học Phần - Môn Cấu Trúc Dữ Liệu & Giải Thuật Đề Số 19
Đề Thi Hết Học Phần - Môn Cấu Trúc Dữ Liệu & Giải Thuật Đề Số 18
Đề Thi Hết Học Phần - Môn Cấu Trúc Dữ Liệu & Giải Thuật Đề Số 17
Đề Thi Hết Học Phần - Môn Cấu Trúc Dữ Liệu & Giải Thuật Đề Số 16
Đề Thi Hết Học Phần - Môn Cấu Trúc Dữ Liệu & Giải Thuật Đề Số 15
Đề Thi Hết Học Phần - Môn Cấu Trúc Dữ Liệu & Giải Thuật Đề Số 14
Đề Thi Hết Học Phần - Môn Cấu Trúc Dữ Liệu & Giải Thuật Đề Số 13
Đề Thi Hết Học Phần - Môn Cấu Trúc Dữ Liệu & Giải Thuật Đề Số 12
Đề Thi Hết Học Phần - Môn Cấu Trúc Dữ Liệu & Giải Thuật Đề Số 11
Đề Thi Hết Học Phần - Môn Cấu Trúc Dữ Liệu Và Giải Thuật Đề Số 10
Đề Thi Hết Học Phần - Môn Cấu Trúc Dữ Liệu Và Giải Thuật Đề Số 09
Đề Thi Hết Học Phần - Môn Cấu Trúc Dữ Liệu Và Giải Thuật Đề Số 08
Đề Thi Hết Học Phần - Môn Cấu Trúc Dữ Liệu Và Giải Thuật Đề Số 07
Đề Thi Hết Học Phần - Môn Cấu Trúc Dữ Liệu Và Giải Thuật Đề Số 06
Đề Thi Hết Học Phần - Môn Cấu Trúc Dữ Liệu Và Giải Thuật Đề Số 05
Đề Thi Hết Học Phần - Môn Cấu Trúc Dữ Liệu Và Giải Thuật Đề Số 04
Đề Thi Hết Học Phần - Môn Cấu Trúc Dữ Liệu Và Giải Thuật Đề Số 03
Đề Thi Hết Học Phần - Môn Cấu Trúc Dữ Liệu Và Giải Thuật Đề Số 02
Đề Thi Hết Học Phần - Môn Cấu Trúc Dữ Liệu Và Giải Thuật Đề Số 01
Đề Cấu Trúc Dữ Liệu Và Giải Thuật Có Đáp Án Cài Đặt Bằng Ngôn Ngữ C - Đề Số 30
Đề Cấu Trúc Dữ Liệu Và Giải Thuật Có Đáp Án Cài Đặt Bằng Ngôn Ngữ C - Đề Số 29
Đề Cấu Trúc Dữ Liệu Và Giải Thuật Có Đáp Án Cài Đặt Bằng Ngôn Ngữ C - Đề Số 28
Đề Cấu Trúc Dữ Liệu Và Giải Thuật Có Đáp Án Cài Đặt Bằng Ngôn Ngữ C - Đề Số 27
Đề Cấu Trúc Dữ Liệu Và Giải Thuật Có Đáp Án Cài Đặt Bằng Ngôn Ngữ C - Đề Số 26
Đề Cấu Trúc Dữ Liệu Và Giải Thuật Có Đáp Án Cài Đặt Bằng Ngôn Ngữ C - Đề Số 25
Đề Cấu Trúc Dữ Liệu Và Giải Thuật Có Đáp Án Cài Đặt Bằng Ngôn Ngữ C - Đề Số 24
Đề Cấu Trúc Dữ Liệu Và Giải Thuật Có Đáp Án Cài Đặt Bằng Ngôn Ngữ C - Đề Số 23
Đề Cấu Trúc Dữ Liệu Và Giải Thuật Có Đáp Án Cài Đặt Bằng Ngôn Ngữ C - Đề Số 22
Đề Cấu Trúc Dữ Liệu Và Giải Thuật Có Đáp Án Cài Đặt Bằng Ngôn Ngữ C - Đề Số 21
Đề Cấu Trúc Dữ Liệu Và Giải Thuật Có Đáp Án Cài Đặt Bằng Ngôn Ngữ C - Đề Số 20
Đề Cấu Trúc Dữ Liệu Và Giải Thuật Có Đáp Án Cài Đặt Bằng Ngôn Ngữ C - Đề Số 19
Đề Cấu Trúc Dữ Liệu Và Giải Thuật Có Đáp Án Cài Đặt Bằng Ngôn Ngữ C - Đề Số 18
Đề Cấu Trúc Dữ Liệu Và Giải Thuật Có Đáp Án Cài Đặt Bằng Ngôn Ngữ C - Đề Số 17
Đề Cấu Trúc Dữ Liệu Và Giải Thuật Có Đáp Án Cài Đặt Bằng Ngôn Ngữ C - Đề Số 16
Đề Cấu Trúc Dữ Liệu Và Giải Thuật Có Đáp Án Cài Đặt Bằng Ngôn Ngữ C - Đề Số 15
Đề Cấu Trúc Dữ Liệu Và Giải Thuật Có Đáp Án Cài Đặt Bằng Ngôn Ngữ C - Đề Số 14
Đề Cấu Trúc Dữ Liệu Và Giải Thuật Có Đáp Án Cài Đặt Bằng Ngôn Ngữ C - Đề Số 12
Đề Cấu Trúc Dữ Liệu Và Giải Thuật Có Đáp Án Cài Đặt Bằng Ngôn Ngữ C - Đề Số 11
Đề Cấu Trúc Dữ Liệu Và Giải Thuật Có Đáp Án Cài Đặt Bằng Ngôn Ngữ C - Đề Số 10
Đề Cấu Trúc Dữ Liệu Và Giải Thuật Có Đáp Án Cài Đặt Bằng Ngôn Ngữ C - Đề Số 9
Đề Cấu Trúc Dữ Liệu Và Giải Thuật Có Đáp Án Cài Đặt Bằng Ngôn Ngữ C - Đề Số 8
Đề Cấu Trúc Dữ Liệu Và Giải Thuật Có Đáp Án Cài Đặt Bằng Ngôn Ngữ C - Đề Số 7
Đề Cấu Trúc Dữ Liệu Và Giải Thuật Có Đáp Án Cài Đặt Bằng Ngôn Ngữ C - Đề Số 6
Đề Cấu Trúc Dữ Liệu Và Giải Thuật Có Đáp Án Cài Đặt Bằng Ngôn Ngữ C - Đề Số 5
Đề Cấu Trúc Dữ Liệu Và Giải Thuật Có Đáp Án Cài Đặt Bằng Ngôn Ngữ C - Đề Số 4
Đề Cấu Trúc Dữ Liệu Và Giải Thuật Có Đáp Án Cài Đặt Bằng Ngôn Ngữ C - Đề Số 3
Đề Cấu Trúc Dữ Liệu Và Giải Thuật Có Đáp Án Cài Đặt Bằng Ngôn Ngữ C - Đề Số 2
Đề Cấu Trúc Dữ Liệu Và Giải Thuật Có Đáp Án Cài Đặt Bằng Ngôn Ngữ C - Đề Số 1
Tìm Đường Đi Ngắn Nhất Trên Đồ Thị Bằng Ngôn Ngữ C- Thuật Toán Dijkstra
Cài Đặt Danh Sách Kề Biểu Diễn Đồ Thị Đơn, Đồ Thị Vô Hướng Bằng Ngôn Ngữ C
Cài Đặt Ma Trận Kề Biểu Diễn Đồ Thị, Duyệt Theo Chiều Sau, Chiều Rộng Ngôn Ngữ C
Bài Toán Dãy Con Lớn Nhất Ngôn Ngữ C
Chương 6 Đồ Thị
Phương Pháp Chia Để Trị
Phương Pháp Tham Lam (Greedy)
Sắp Xếp Chèn
Bảng Băm
Chapter 2 Các Cấu Trúc Dữ Liệu Cơ Bản
Phân Tích Thuật Toán
Phần I – Giới Thiệu Về Thuật Toán
2.6 Queue – Hàng Đợi
2.5 Ngăn Xếp ‐ Stack
Cấu Trúc Dữ Liệu Cây (Tree)/khái Niệm Cơ Bản/cây Nhị Phân/duyệt Cây
Đồ Thị
Cây, Cây Nhị Phân, Cây Nhị Phân Tìm Kiếm
Cài Đặt Cấu Trúc Dữ Liệu Cây Nhị Phân Bằng Ngôn Ngữ C++  Binarytree.Cpp
Cài Đặt Cấu Trúc Dữ Liệu Danh Sách Liên Kết Đơn Bằng Ngôn Ngữ C++  Singly_Linked_List.Cpp
Cài Đặt Cấu Trúc Dữ Liệu Hàng Đợi Bằng Ngôn Ngữ C++  Queue.Cpp
Cài Đặt Cây Nhị Phân Tìm Kiếm Bằng Ngôn Ngữ C++  Binarysearchtree.Cpp
Các Phương Pháp Tìm Kiếm Heuristic
Thuật Giải Heuristic
Đề Kiểm Tra Giữa Học Kỳ 1 Môn Cấu Trúc Dữ Liệu Và Giải Thuật - Năm Học 2009 Đại Học Bách Khoa Hcm
Đề Kiểm Tra Giữa Học Kỳ 1 Môn Cấu Trúc Dữ Liệu Và Giải Thuật - Năm Học 2011– 2012 Đại Học Bách Khoa Hcm
Đề Kiểm Tra Giữa Học Kỳ 1 Môn Cấu Trúc Dữ Liệu Và Giải Thuật - Năm Học 2010 – 2011 Đại Học Bách Khoa Hcm
Giới Thiệu Phân Tích Thuật Toán
Hàng Đợi Ưu Tiên
Cây Nhị Phân Tìm Kiếm
Cấu Trúc Dữ Liệu Cây
B-Tree (1)
M-Way Tree - Cây M-Nhánh
Cấu Trúc Dữ Liệu Cây Avl/cây Nhị Phân Cân Bằng Avl
B-Tree
Cây Aa - Aa Tree
Cây Đỏ Đen - Red Black Tree
Bảng Băm – Hash Table
Cây Nhị Phân Tìm Kiếm Cân Bằng - Avl
Hàng Đợi Ưu Tiên – Priority Queue
Cây Nhị Phân Tìm Kiếm – Binary Search Tree
Vai Trò Của Cấu Trúc Dữ Liệu
Đề Thi Thực Hành Môn Cấu Trúc Dữ Liệu Khoa Khoa Học Máy Tính Uit
Đề Thi Môn: Cấu Trúc Dữ Liệu Và Giải Thuật Mã Đề Cd 2011 - 01 Trường Đại Học Bách Khoa Hà Nội
Đề Thi Giữa Kì Cấu Trúc Dữ Liệu Và Giải Thuật Lớp Môn Học: Int2203 Học Kỳ I, Năm Học 2012, 2013 - Trường Đại Học Công Nghệ
Đề Thi Cuối Kì Cấu Trúc Dữ Liệu Và Giải Thuật Lớp Môn Học: Int2203 1,3 Học Kỳ I, Năm Học 2012, 2013 - Trường Đại Học Công Nghệ
Đề Thi Cuối Kì Cấu Trúc Dữ Liệu Và Giải Thuật Học Kì Ii, 2009-2010 Lớp K53cb, K53cc - Trường Đại Học Công Nghệ
Đề Thi Cuối Kì Cấu Trúc Dữ Liệu Và Giải Thuật Học Kì I, 2009-2010 Lớp K52ca, Cb, Cc - Trường Đại Học Công Nghệ
Thuật Toán Và Độ Phức Tạp Của Thuật Toán
Cấu Trúc Dữ Liệu Và Giải Thuật - Đh Cần Thơ
Cấu Trúc Dữ Liệu & Giải Thuật (Data Structures And Algorithms) Các Cấu Trúc Dữ Liệu Nguyễn Tri Tuấn Khoa Cntt – Đh.Khtn.Tp.Hcm
Data Structures & Algorithms - Red Black + Aa Tree Cây Cân Bằng Red Black Và Aa Nguyen Tri Tuan, Dh.Khtn Tp.Hcm
Các Thuật Toán Sắp Xếp (Sorting Algorithms) Nguyễn Tri Tuấn Khoa Cntt – Đh.Khtn.Tp.Hcm
Đề Cương Môn Học Ctt101 Cấu Trúc Dữ Liệu Và Giải Thuật Trường Đại Học Khoa Học Tự Nhiên
Cấu Trúc Dữ Liệu Và Giải Thuật - Chương I: Các Kiến Thức Cơ Bản