Xĩa tồn bộ câynhị phân

Một phần của tài liệu Giáo trình cấu trúc dữ liệu và giải thuật (Trang 46 - 49)

a) Trường hợp 1: X là nút lá Chỉ cần hủy mĩc nối từ nút cha đến nút

4.5. Xĩa tồn bộ câynhị phân

Việt xĩa cây nhị phân được thực hiện đệ quy như sau: • Xĩa cây con bên trái

• Xĩa cây con bên phải • Xĩa nút gốc

{ if (t!= NULL){ if (t!= NULL){ XoaCay(t->pLeft); XoaCay(t->pRight); delete t; } } void main() { XoaCay(Root); } 5. Bài tập:

1.Trình bày thuật tốn và cài đặt tất cả các thao tác trên cây nhị phân tìm kiếm, câynhị phân tìm kiếm cân bằng trong trường hợp chấp nh

ận sự trùng khĩa nhận diệncủa các nút trong câỷ

2. Trình bày tất cả các thuật tốn và cài đặt tất cả các thuật tốn để thực

hiện việc hủymột nút trên cây nhị phân tìm kiếm nếu cây cĩ 02 cây con? Theo bạn, thuật tốn

nào là đơn giản? Cho nhận xét về mỗi thuật tốn?

3. Trình bày và cài đặt tất cả các thuật tốn để thực hiện các thao tá c trên cây nhịphân tìm kiếm, cây nhị phân tìm kiếm cân bằng trong hai

trường hợp: Chấp nhận vàKhơng chấp nhận sự trùng lắp về khĩa của

các nút bằng cách khơng sử dụng thuật_tốn đệ quy (Trừ các thao tác

đã trình

bày trong tài liệu)?

4. Trình bày thuật tốn và cài đặt chương trình thực hiện các cơng việc sau trên cây nhị phân:

a) Tính số nút lá của câỵ

b) Tính số nút trung gian của câỵ

c) Tính chiều dài đường đi tới một nút cĩ khĩa là K trên câỵ d) Cho biết cấp của một nút cĩ khĩa là K trên câỵ

6. Trình bày thuật tốn và cài đặt chương trình thực hiện cơng việc tạo cây nhị phântìm kiếm mà khĩa của các nút là khĩa của các nút t rong một danh sách liên kết đơisao cho tối ưu hĩa bộ nhớ. Biết rằng, d anh sách liên kết đơi ban đầu khơng cần thiết

sau khi tạo xong cây nhị phân tìm kiếm và giả sử khơng cho phép

sự

trùng khĩa giữa các nút trong câỵ

7. Với yêu cầu trong bài tập 8 ở trên, trong trường hợp nếu danh sách l iên

kết cĩ nhiềunút cĩ thành phần dữ liệu giống nhau, bạn hãy đề xu

ất

phương án giải quyết đểkhơng bị mất dữ liệu sau khi tạo xong cây nhị

phân tìm kiếm.

8. Trình bày thuật tốn và cài đặt chương trình thực hiện cơng việc

chuyển cây nhị_phân tìm kiếm thành danh sách liên kết đơi sao cho

tối ưu hĩa bộ nhớ. Biết rằng,cây nhị phân tìm kiếm ban đầu khơng

cần thiết_sau khi tạo xong danh sách liên kết

Chương 5: Các phương pháp Sắp xếp 1. Khái quát về sắp xếp:

Để thuận tiện và giảm thiểu thời gian thao tác mà đặc biệt là để tìm

kiếm dữ liệu dễ dàng và nhanh chĩng, thơng thường trước khi thao tác thì dữ liệu trên mảng, trên tập tin đã cĩ thứ tự. Do vậy, thao tác sắp xếp dữ liệu là một trong những thao tác cần thiết và thường gặp trong quá trình lưu trữ, quảnlý dữ liệụ

Thứ tự xuất hiện dữ liệu cĩ thể là thứ tự tăng (khơng giảm dần) hoặc thứ tự giảm (khơng tăng dần). Trong phạm vi chương này chúng ta sẽ thực hiện việc sắp xếp dữ liệu theo thứ tự tăng. Việc sắp xếp dữ liệu theo thứ tự giảm hồn tồn tương tự.

Cĩ rất nhiều thuật tốn sắp xếp song chúng ta cĩ thể phân chia các thuật tốn sắp xếp

thành hai nhĩm chính căn cứ vào vị trí lưu trữ của dữ liệu trong máy tính, đĩ

là:

- Các giải thuật sắp xếp thứ tự nội (sắp xếp thứ tự trên dãy/mảng),

- Các giải thuật sắp xếp thứ tự ngoại (sắp xếp thứ tự trên tập tin/file).

Một phần của tài liệu Giáo trình cấu trúc dữ liệu và giải thuật (Trang 46 - 49)

Tải bản đầy đủ (PDF)

(60 trang)