Cây Đỏ Đen (Red-Black Tree) – Phần 3 (Delete)
|

Cây Đỏ Đen (Red-Black Tree) – Phần 3 (Delete)

This entry is part 16 of 16 in the series Cấu trúc dữ liệu

Ở bài trước, chúng ta đã hoàn thành việc insert một Node vào Red Back Tree. Còn bây giờ, hãy cũng tìm cách để xóa một node khỏi cây đỏ đen nào. Phần 1: Giới thiệu về cây đỏ đen Phần 2: Cây đỏ đen – Thao tác Chèn Xóa (Delete) là một quá trình…

Cây Đỏ Đen (Red-Black Tree) – Phần 2 (Insert)

Cây Đỏ Đen (Red-Black Tree) – Phần 2 (Insert)

This entry is part 15 of 16 in the series Cấu trúc dữ liệu

Ở bài trước, chúng ta đã tìm hiểu sơ qua về cây đỏ đen – Red Black Tree. Còn trong bài viết này, ta sẽ cùng nhau đi tìm hiểu cách để thêm (insert) một node vào cây đỏ đen. Phần 1: Cây Đỏ Đen (Red-Black Tree) – Phần 1 (Giới thiệu) 1. Ôn lại…

Cây Đỏ Đen (Red-Black Tree) – Phần 1 (Giới thiệu)

Cây Đỏ Đen (Red-Black Tree) – Phần 1 (Giới thiệu)

This entry is part 14 of 16 in the series Cấu trúc dữ liệu

Cây đỏ đen (Red-Black Tree) là một loại cây tìm kiếm nhị phân tự cân bằng do Rudolf Bayer phát minh vào năm 1972. Điểm đặc biệt ở đây là mọi node của cây đều có thêm thuộc tính bit và nó quy định màu sắc của node đó (màu đỏ hoặc đen). Cái tên…

Thuật toán Prim (Prim’s Algorithm)

Thuật toán Prim (Prim’s Algorithm)

This entry is part 13 of 16 in the series Cấu trúc dữ liệu

Thuật toán Prim (tiếng anh: Prim’s algorithm) là một thuật toán tham lam được dùng để tìm cây khung nhỏ nhất (Minimum Spanning Tree – MST) của một đồ thị liên thông có trọng số. Thuật toán được tìm ra vào năm 1975 và được đặt tên theo nhà nghiên cứu khoa học máy tính…

Cây AVL (AVL Tree) – Phần 2 (Deletion)
|

Cây AVL (AVL Tree) – Phần 2 (Deletion)

This entry is part 12 of 16 in the series Cấu trúc dữ liệu

Phần 1 Ở bài này, mình sẽ hướng dẫn các bạn cách để “xóa Node – Deletion” trong cây AVL. Và đây cũng là phần cuối của series AVL Tree. Bởi lẽ bản chất của AVL Tree chính là BST (Binary Search Tree) ở dạng cân bằng, do đó ngoài Insert và Delete ra thì…

Cây AVL (AVL Tree) – Phần 1 (Insertion)

Cây AVL (AVL Tree) – Phần 1 (Insertion)

This entry is part 11 of 16 in the series Cấu trúc dữ liệu

Cây AVL: Phần 2 Cây AVL (tiếng Anh là AVL Tree, AVL là viết tắt tên của các tác giả phát minh ra nó Adelson-Velsky và Landis). Cây AVL là một cây tìm kiếm nhị phân có khả năng tự cân bằng, điều đó giúp cho cây AVL tối ưu hơn rất nhiều so với…

Hàng đợi trong C++ | Sử dụng hàng đợi trong thư viện STL
|

Hàng đợi trong C++ | Sử dụng hàng đợi trong thư viện STL

Hàng đợi là một cấu trúc dữ liệu cơ bản mà lập trình viên nào cũng cần biết. Ở bài này chúng ta sẽ tìm hiểu về các cấu trúc dữ liệu hàng đợi và tiến hành cài đặt hàng đợi trong C++ sử dụng bộ thư viện STL bao gồm queue và deque. Chúng…

Danh sách kề (Adjacency list)

Danh sách kề (Adjacency list)

This entry is part 10 of 16 in the series Cấu trúc dữ liệu

Trong bài viết này, bạn sẽ cùng Lập Trình Không Khó tìm hiểu về danh sách kề (tiếng anh: adjacency list). Bài viết sẽ trình bày từng bước chi tiết để bạn đọc có thể hiểu được cấu trúc dữ liệu danh sách kề, phân tích ưu nhược điểm và ứng dụng của nó. Cũng…

Bài tập danh sách liên kết đơn tổng hợp
|

Bài tập danh sách liên kết đơn tổng hợp

This entry is part 9 of 16 in the series Cấu trúc dữ liệu

Bài tập danh sách liên kết đơn dưới đây là một dạng bài tập tổng hợp giúp các bạn ôn luyện lại kiến thức về danh sách liên kết đơn cũng như các kiến thức khác về lập trình C. Sau bài học này, ngoài kiến thức về danh sách liên kết đơn, bạn cũng…

Ngăn xếp – Stack
| | |

Ngăn xếp – Stack

This entry is part 1 of 16 in the series Cấu trúc dữ liệu

Ngăn xếp(Stack) là cấu trúc dữ liệu quan trọng tiếp theo mà chúng ta sẽ học trong bài viết ngày hôm nay. Bằng việc thêm một số ràng buộc so với mảng, chúng ta có cấu trúc dữ liệu ngăn xếp giúp tốc độ tính toán trở nên nhanh và thuận tiện hơn. Vậy ngăn…