# Cây (lý thuyết đồ thị)

### Bách khoa toàn thư mở Wikipedia

Một cây có dán nhãn với 6 đỉnh và 5 cạnh

Cây là khái niệm quan trọng trong lý thuyết đồ thị, cấu trúc dữ liệu và giải thuật.

## [sửa] Cây tự do

Cây tự do là một đơn đồ thị, liên thông, không có chu trình.

Định lý sau cho biết các điều kiện tương đương với định nghĩa cây

## [sửa] Định lý - Các điều kiện cần và đủ để đồ thị là một cây

Cho đồ thị G=(V,E) có n đỉnh. Sáu mệnh đề sau là tương đương:

1. G là một cây;
2. G không có chu trình và có n-1 cạnh;
3. G liên thông và có n-1 cạnh;
4. G không có chu trình và nếu bổ xung vào một cạnh nối hai đỉnh không kề nhau thì xuất hiện một chu trình;
5. G liên thông và nếu bỏ đi một cạnh thì G mất tính liên thông;
6. Mỗi cặp đỉnh trong G được nối với nhau bằng đường đi duy nhất.

## [sửa] Cây (có gốc)

Cây (có gốc) là cây trong đó có một đỉnh được chọn là gốc và mỗi cạnh được định hướng trùng với hướng đi của đường đi duy nhất từ gốc tới mỗi đỉnh.

Trong một cây có gốc, nếu có một cạnh đi từ đỉnh x đến đỉnh y thì đỉnh x được gọi là cha của đỉnh y, y là con của x (xem đồ thị (toán học)).

Hai đỉnh cùng cha được gọi là anh em, đỉnh không có con được gọi là lá hay đỉnh ngoài, đỉnh không là lá được gọi là đỉnh trong.

Số cạnh trên đường đi từ gốc tới mỗi đỉnh được gọi là mức của đỉnh ấy.

## [sửa] Cây nhị phân

Cây có gốc mỗi đỉnh có không quá hai con được gọi là cây nhị phân (binary tree).

Cây nhị phân mà mỗi đỉnh trong có đúng hai con được gọi là cây nhị phân đầy đủ(full binary tree)

Cây nhị phân đầy đủ mà tất cả các lá có cùng một mức được gọi là cây nhị phân hoàn chỉnh (perfect binary tree). Một số tài liệu gọi cây loại này là cây đầy đủ.

Cây nhị phân mà mỗi đỉnh của nó đã có con phải thì cũng có con trái được gọi là cây nhị phân gần hoàn chỉnh (almost complete binary tree).

## [sửa] Ứng dụng cây trong khoa học máy tính

Trong khoa học máy tính cây là một cấu trúc dữ liệu không tuyến tính.

Cấu trúc cây được ứng dụng trong các giải thuật tìm kiếm, giải thuật sắp xếp và nhiều bài toán khác

Cây dùng để biểu diễn bài toán quyết định (cây quyết định), biểu diễn quá trình tính toán các biểu thức đại số.

## [sửa] Các cây đặc biệt

- Cây đỏ đen
- Cây 2-3-4
- B-Cây
- Cây tìm kiếm nhị phân
- Đống (heap)

## [sửa] Biểu diễn cây

Có thể biểu diễn cây bằng mảng hoặc bằng danh sách kề. Khi biểu diễn bằng danh sách kề, mọi cây có thể chuyển sang một cây nhị phân tương đương với nó.

## [sửa] Cây bao trùm

Mọi đơn đồ thị lên thông G có ít nhất một đồ thị con là cây và chứa tất cả các đỉnh của G. Đồ thị con này được gọi là cây bao trùm của G. Đồ thị G có thể có nhiều cây bao trùm. Nếu G có trọng số trên các cạnh thì cây bao trùm có tổng trọng số trên các cạnh của nó là nhỏ nhất (/lớn nhất) được gọi là cây bao trùm nhỏ nhất (/lớn nhất).

## [sửa] Các thuật toán duyệt cây

- Duyệt tiền thứ tự
- Duyệt trung thứ tự
- Duyệt hậu thứ tự

## [sửa] Các thuật toán tìm cây bao trùm

- Thuật toán tìm cây bao trùm
  - Thuật toán tìm cây bao trùm theo chiều rộng
  - Thuật toán tìm cây bao trùm theo chiều sâu
- Tìm cây bao trùm nhỏ nhất
  - Thuật toán Prim
  - Thuật toán Kruskal

## [sửa] Các thuật toán khác

- Thuật toán vun đống
- Thuật toán xây dựng cây mã Huffman

## [sửa] Xem thêm

- Thuật ngữ lý thuyết đồ thị

Lấy từ “http://vi.wikipedia.org../../../c/%C3%A2/y/C%C3%A2y_%28l%C3%BD_thuy%E1%BA%BFt_%C4%91%E1%BB%93_th%E1%BB%8B%29.html”

Thể loại: Cây (cấu trúc) | Cấu trúc dữ liệu | Lý thuyết đồ thị

##### Views

- Bài viết
- Thảo luận
- Phiên bản hiện hành

##### Tìm kiếm

##### Ngôn ngữ khác

- Česky
- Deutsch
- English
- Italiano
- עברית
- Lietuvių
- 日本語
- Polski
- Русский
- Suomi
- Svenska
- ไทย
- 中文