• Cây tìm kiếm nhị phân (Binary Search Tree) Cây tìm kiếm nhị phân (Binary Search Tree)
    Một cây tìm kiếm nhị phân (Binary Search Tree – viết tắt là BST) là một cây mà trong đó tất cả các nút đều có các đặc điểm sau.
  • Duyệt cây trong cấu trúc dữ liệu và giải thuật Duyệt cây trong cấu trúc dữ liệu và giải thuật
    Duyệt cây là một tiến trình để truy cập tất cả các nút của một cây và cũng có thể in các giá trị của các nút này. Bởi vì tất cả các nút được kết nối thông qua các cạnh (hoặc các link), nên chúng ta luôn luôn bắt đầu truy cập từ nút gốc.
  • Giải thuật tìm kiếm theo chiều rộng Giải thuật tìm kiếm theo chiều rộng
    Giải thuật tìm kiếm theo chiều rộng (Breadth First Search – viết tắt là BFS) duyệt qua một đồ thị theo chiều rộng và sử dụng hàng đợi (queue) để ghi nhớ đỉnh liền kề để bắt đầu việc tìm kiếm khi không gặp được đỉnh liền kề trong bất kỳ vòng lặp nào.
  • Giải thuật tìm kiếm theo chiều sâu Giải thuật tìm kiếm theo chiều sâu
    Giải thuật tìm kiếm theo chiều sâu (Depth First Search – viết tắt là DFS), còn được gọi là giải thuật tìm kiếm ưu tiên chiều sâu, là giải thuật duyệt hoặc tìm kiếm trên một cây hoặc một đồ thị và sử dụng stack (ngăn xếp) để ghi nhớ đỉnh liền kề để bắt đầu việc tìm kiếm khi không gặp được đỉnh liền kề trong bất kỳ vòng lặp nào.
  • Cấu trúc dữ liệu đồ thị (Graph) Cấu trúc dữ liệu đồ thị (Graph)
    Một đồ thị (đồ thị) là một dạng biểu diễn hình ảnh của một tập các đối tượng, trong đó các cặp đối tượng được kết nối bởi các link. Các đối tượng được nối liền nhau được biểu diễn bởi các điểm được gọi là các đỉnh (vertices), và các link mà kết nối các đỉnh với nhau được gọi là các cạnh (edges).
  • Giải thuật sắp xếp nhanh (Quick Sort) Giải thuật sắp xếp nhanh (Quick Sort)
    Giải thuật sắp xếp nhanh (Quick Sort) là một giải thuật hiệu quả cao và dựa trên việc chia mảng dữa liệu thành các mảng nhỏ hơn.
  • Shell Sort trong cấu trúc dữ liệu và giải thuật Shell Sort trong cấu trúc dữ liệu và giải thuật
    Shell Sort là một giải thuật sắp xếp mang lại hiệu quả cao dựa trên giải thuật sắp xếp chèn (Insertion Sort). Giải thuật này tránh các trường hợp phải tráo đổi vị trí của hai phần tử xa nhau trong giải thuật sắp xếp chọn (nếu như phần tử nhỏ hơn ở vị trí bên phải khá xa so với phần tử lớn hơn bên trái).
  • Giải thuật sắp xếp trộn (Merge Sort) Giải thuật sắp xếp trộn (Merge Sort)
    Sắp xếp trộn (Merge Sort) là một giải thuật sắp xếp dựa trên giải thuật Chia để trị (Divide and Conquer). Với độ phức tạp thời gian trường hợp xấu nhất là Ο(n log n) thì đây là một trong các giải thuật đáng được quan tâm nhất.
  • Bài toán Tháp Hà Nội (Tower of Hanoi) Bài toán Tháp Hà Nội (Tower of Hanoi)
    Bài toán Tháp Hà Nội (Tower of Hanoi) là một trò chơi toán học bao gồm 3 cột và với số đĩa nhiều hơn 1.
  • Khái niệm cơ bản về đệ qui (Recursion) Khái niệm cơ bản về đệ qui (Recursion)
    Một số ngôn ngữ lập trình cho phép việc một module hoặc một hàm được gọi tới chính nó. Kỹ thuật này được gọi là Đệ qui (Recursion).
  • Giải thuật sắp xếp chọn (Selection Sort) Giải thuật sắp xếp chọn (Selection Sort)
    Giải thuật sắp xếp chọn (Selection Sort) là một giải thuật đơn giản. Giải thuật sắp xếp này là một giải thuật dựa trên việc so sánh in-place, trong đó danh sách được chia thành hai phần, phần được sắp xếp (sorted list) ở bên trái và phần chưa được sắp xếp (unsorted list) ở bên phải. Ban đầu, phần được sắp xếp là trống và phần chưa được sắp xếp là toàn bộ danh sách ban đầu.
  • Cấu trúc dữ liệu Heap Cấu trúc dữ liệu Heap
    Cấu trúc dữ liệu Heap là một trường hợp đặc biệt của cấu trúc dữ liệu cây nhị phân cân bằng, trong đó khóa của nút gốc được so sánh với các con của nó và được sắp xếp một cách phù hợp.
  • Cây khung (Spanning Tree) trong cấu trúc dữ liệu và giải thuật Cây khung (Spanning Tree) trong cấu trúc dữ liệu và giải thuật
    Một cây khung là một tập con của Grahp G mà có tất cả các đỉnh được bao bởi số cạnh tối thiểu nhất. Vì thế, một cây khung sẽ không hình thành một vòng tuần hoàn và nó cũng không thể bị ngắt giữa chừng.
  • Cây AVL trong cấu trúc dữ liệu và giải thuật Cây AVL trong cấu trúc dữ liệu và giải thuật
    Điều gì xảy ra nếu dữ liệu nhập vào cây tìm kiếm nhị phân (BST) là ở dạng đã được sắp thứ tự (tăng dần hoặc giảm dần). Nó sẽ trông giống như sau.
  • Giải thuật sắp xếp chèn (Insertion Sort) Giải thuật sắp xếp chèn (Insertion Sort)
    Sắp xếp chèn là một giải thuật sắp xếp dựa trên so sánh in-place. Ở đây, một danh sách con luôn luôn được duy trì dưới dạng đã qua sắp xếp. Sắp xếp chèn là chèn thêm một phần tử vào danh sách con đã qua sắp xếp. Phần tử được chèn vào vị trí thích hợp sao cho vẫn đảm bảo rằng danh sách con đó vẫn sắp theo thứ tự.
  • Giải thuật sắp xếp nổi bọt (Bubble Sort) Giải thuật sắp xếp nổi bọt (Bubble Sort)
    Sắp xếp nổi bọt là một giải thuật sắp xếp đơn giản. Giải thuật sắp xếp này được tiến hành dựa trên việc so sánh cặp phần tử liền kề nhau và tráo đổi thứ tự nếu chúng không theo thứ tự.
  • Giải thuật sắp xếp trong cấu trúc dữ liệu & giải thuật Giải thuật sắp xếp trong cấu trúc dữ liệu & giải thuật
    Sắp xếp là sắp xếp dữ liệu theo một định dạng cụ thể. Trong khoa học máy tính, giải thuật sắp xếp xác định cách để sắp xếp dữ liệu theo một thứ tự nào đó. Sắp xếp theo thứ tự ở đây là sắp xếp theo thứ tự dạng số hoặc thứ tự dạng chữ cái như trong từ điển.
  • Cấu trúc dữ liệu Hash Table Cấu trúc dữ liệu Hash Table
    Cấu trúc dữ liệu Hash Table là một cấu trúc dữ liệu lưu giữ dữ liệu theo cách thức liên hợp. Trong Hash Table, dữ liệu được lưu giữ trong định dạng mảng, trong đó các giá trị dữ liệu có giá trị chỉ mục riêng. Việc truy cập dữ liệu trở nên nhanh hơn nếu chúng ta biết chỉ mục của dữ liệu cần tìm.