1. Trang chủ
  2. » Thể loại khác

Tài Liệu - Võ Tấn Dũng (votandung) ď OnThiCTDL K9

2 96 0

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 2
Dung lượng 51 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

HCMKHOA CÔNG NGHỆ THÔNG TIN CÂU HỎI & BÀI TẬP ÔN TẬP MÔN CẤU TRÚC DỮ LIỆU VÀ GIẢI THUẬT Khóa 9 a.. Hãy minh hoạ kết quả thực hiện từng bước sắp xếp theo thứ tự tăng bằng giải thuật đổi c

Trang 1

TRƯỜNG CAO ĐẲNG CÔNG NGHỆ THÔNG TIN TP HCM

KHOA CÔNG NGHỆ THÔNG TIN

CÂU HỎI & BÀI TẬP ÔN TẬP MÔN CẤU TRÚC DỮ LIỆU VÀ GIẢI THUẬT

(Khóa 9)

a Hãy minh hoạ kết quả thực hiện từng bước sắp xếp theo thứ tự tăng bằng giải thuật đổi chỗ trực tiếp (Interchange Sort)

b Hãy viết giải thuật bằng mã tự nhiên hoặc cài đặt hàm bằng ngôn ngữ C/ C++ cho giải thuật đổi chỗ trực tiếp

c Giả sử cần tìm phần tử có giá trị 21, hãy cho biết vị trí tìm thấy khi áp dụng giải thuật

tìm nhị phân trên dãy số đã được sắp xếp ở câu a (Dãy được đánh chỉ số bắt đầu từ 0)

Ôn tập kỹ các giải thuật sắp xếp khác (minh họa từng bước và cài đặt hàm):

- Chọn trực tiếp (Selection Sort)

- Chèn trực tiếp (Insertion Sort)

- Nổi bọt (Bubble Sort)

Câu 2: Cho khai báo cấu trúc danh sách liên kết đơn số nguyên và các hàm được cài đặt sẵn

bằng ngôn ngữ C++ như sau:

struct tnode

{

int data;

struct tnode *pNext;

};

typedef struct tnode NODE;

struct tlist

{

NODE *pHead, *pTail;

};

typedef struct tlist LIST;

1 void XoaDau(LIST &list); Xóa node đầu tiên (pHead) của danh sáchlist

2 void XoaCuoi(LIST &list); Xóa node cuối cùng (pTail) của danh sáchlist

3 void XoaNode(LIST &list, NODE *pDel); Xóa node pDel có trong danh sách list Hãy cài đặt bổ sung các hàm sau:

1 int DemX(LIST list, int x); Đếm và trả về số lượng node có giá trị lớn hơn x chotrước

2 void InSoNguyenTo(LIST list); In các giá trị là số nguyên tố trong danh sách list

3 NODE *TimMax(LIST list); Tìm và trả về node có giá trị lớn nhất trong danh sách

list

4 void XoaMax(LIST &list); Xóa node có giá trị lớn nhất khỏi danh sách list

Page 1 of 2

Trang 2

Ôn tập kỹ các thao tác trên danh sách liên kết số nguyên (minh họa từng bước và cài đặt hàm):

- Thêm node vào danh sách

- Duyệt danh sách để xác định số lượng node, tìm kiếm node, xuất giá trị của node, tính tổng hoặc giá trị trung bình các node trong danh sách.

- Xóa node khỏi danh sách

Câu 3: Cho khai báo cấu trúc hàng đợi số nguyên (quece) được tổ chức bằng mảng một chiều

như sau:

typedef struct QUEUE

{

int *QArray; //Mảng chứa hàng đợi

int QMax; //Số lượng phần tử tối đa

int QNumItems; //Số lượng phần tử trong hàng đợi

int QFront; //Vị trí phần tử đầu của hàng đợi

int QRear; //Vị trí phần tử cuối của hàng đợi

};

Giả sử có hàng đợi với các thông tin như sau:

Chỉ số mảng 0 1 2 3 4 5 6

QNumItems 5

Hãy cho biết thông tin của cấu trúc hàng đợi khi lần lượt thực hiện các thao tác (sử dụng

phương pháp hàng đợi xoay vòng để tránh hàng đợi bị “tràn giả”):

a Thêm giá trị 111 vào hàng đợi

b Lấy một giá trị khỏi hàng đợi

c Thêm giá trị 555 vào hàng đợi

Câu 4: Sử dụng lại dãy số ban đầu của câu 1, hãy thực hiện các yêu cầu sau:

a Vẽ cây nhị phân tìm kiếm (theo thứ tự nhập từ trái sang phải).

b Vẽ lại cây nhị phân tìm kiếm khi lần lượt chèn thêm các nút có giá trị: 10, 14 và 35

c Sau khi vẽ lại cây ở câu 4b, cho biết:

- Cho biết các nút có đúng 1 cây con trái.

- Các đường đi xuất phát từ gốc có độ dài là 3.

- Độ cao của cây.

d Trình bày từng bước duyệt cây ở (câu 4b) theo thứ tự trước (NLR).

e Trình bày từng bước khi xóa lần lượt các nút có giá trị: 21 và 23

Ôn tập thêm về cây nhị phân tìm kiếm:

- Các khái niệm về bậc của nút, nút lá, nút nhánh, độ dài đường đi (tính bằng số nhánh cần phải đi qua), độ cao của cây, các nút trên cùng một mức (nút gốc được tính là mức 0)

- Các thao tác duyệt cây: NLR, LNR và LRN

- Xóa nút khỏi cây: Xóa nút lá, xóa nút nhánh và xóa nút có 2 cây con (tìm phần tử thế mạng)

Page 2 of 2

Ngày đăng: 15/12/2017, 17:03

🧩 Sản phẩm bạn có thể quan tâm

w