Đề thi cơ sở dữ liệu và giải thuật - Pdf 18

Câu 1 : (3 điểm) Giả sử tồn tại cây nhị phân tìm kiếm (CNPTK) T trên bộ nhớ, có dữ liệu
của mỗi phần tử là 1 điểm trên mặt phẳng như sau:
CODE
struct point {
int x,y;
};
struct BSTree {
Node Root;
};
struct tagNode {
point data;
tagNode *Left, *Right;
};
typedef tagNode *Node;
Anh (chị) hãy :
a) Nhập vào một số thực a, tìm phần tử b của cây T mà b có x gần a nhất (dùng fasb để
lấy giá trị tuyệt đối của số thực).
b) Cho biết cặp điểm gần nhau nhất của cây T.
Câu 2 : (4 điểm)
Trên mặt phẳng Oxy có một hình vuông C, ta chia hình vuông C này thành 04 hình
vuông C1, C2, C3, C4. Trong mỗi hình vuông Ci (i = 1, 2, 3, 4) ta lại chia thành 04 hình
vuông nhỏ hơn mỗi hình vuông được tô màu xanh, đỏ, tím, vàng (theo thứ tự như hình
vẽ). Quá tình chia nhỏ kết thúc khi diện tích nhỏ hơn a (cho trước). Anh (chị) hãy xây
dựng cấu trúc dữ liệu động để lưu trữ các hình vuông và thuật toán để xây dựng các hình
vuông này.
CODE
___________________________
| | |
| | |
| Xanh | Đỏ |
| | |

Viết các hàm thực hiện các chức năng sau:
Nhập xuất, ghi dữ liệu vào file, đọc dữ liệu từ file
Thêm, xoá một sinh viên.
Tìm kiếm sinh viên theo mã số, theo điểm trung bình
Sắp xếp sv theo mã số
Sắp xếp sv theo điểm từ cao xuống thấp, xếp loại, xếp hạng, loại giỏi ở
trên cùng rồi đến khá trung bình yếu
điểm trung bình
< 5.0 : Yếu
< =6.5 : Nếu có môn dưới 4 : Yếu, ngược lại Trung Bình
< 8.0 : Nếu có môn <6.5 : Trung Bình, ngược lại Khá
>=8.0 : Nếu có môn <7 : Khá, ngược lại Giỏi
In ra màn mình danh sách SV : Mã số, Họ tên, các điểm(T,V,L), điểm
trung bình, loại, xếp hạng (cùng điểm TB, cùng loại thì cùng hạng) theo thứ tự
hạng tăng dần.
7. Một ma trận chứa rất ít phần tử với gía trị có nghĩa (tức phần tử khác 0) gọi là
ma trận thưa. Tìm cấu trúc dữ liệu biểu diễn ma trận thưa sao cho tiết kiệm
nhất (chỉ lưu trữ các phần tử có ý nghĩa. Viết chuong trình cho phép nhập, xuất
ma trận, cộng 2 ma trận
8. Giả sử có một dãy số lưu trong file như sau:
8 3 5 2 20 11 30 9 18 4.
Chuyển dữ liệu trong file vào cây nhị phân tìm kiếm
9. Giả sử phải xây dựng một chương trình soạn thảo văn bản, hãy chọn cấu trúc
dữ liệu thích hợp để lưu trữ văn bản trong quá trình soạn thảo. Biết rằng
- Số dòng văn bản không hạn chế
- Mỗi dòng văn bản có chiều dài tối đa 80 ký tự
- Các thao tác yêu cầu gồm:
Di chuyển trong văn bản (lên, xuống, qua trái, qua phải)
Thêm, xoá sửa ký tự trong một dòng
Thêm, xoá một dòng trong văn bản

typedef Node *BSNode;
2.
Anh chị hãy viết chương trình:
1. Đếm số node lá trong cây T (1 điểm)
2. Tạo 01 mảng a (các phần tử là các số nguyên) có số phần tử là số node lá của
cây T, mỗi phần tử mang giá trị là giá trị của các node là (2 điểm)
3. Tính trung bình tổng chiều dài đường đi từ gốc đến tất cả các node lá (2 điểm)
Câu 2 (5 điểm)
Anh chị hãy đề nghị xây dựng 01 cấu trúc dữ liệu (động) và các thủ tục để quản lý
các phần tử được mô tả như sau:
1. MỖi phần tử là một tam giác đều, được thể hiện qua toạ độ 03 đỉnh của tam
giác.
2.Từ 01 tam giác ta lấy toạ độ tâm của tam giác ta sẽ tạo được 03 tam giác mới có
quan hệ với tam giác cũ.
3. Việc phân chia sẽ hoàn tất khi khoảng cách từ tâm đến 01 đỉnh bất kì nhỏ hơn
epsilon cho trước.
4.Hãy cho biết có bao nhiêu tam giác được sinh ra khi phân chia như trên(với dữ
liệu là 01 tam giác có toạ độ xác định ban đầu)?
5. Diện tích tam giác nhỏ nhất là bao nhiêu?
6.Cho biết toạ độ các tam giác có diện tích nhỏ nhất?
7.Có bao nhiêu tam giác có diện tích nhỏ nhất?

Câu 1:
a)Định nghĩa cấu trúc dãy . Đua ra cấu trúc dữ liệu cho dãy số nguyên không quá 200
phần tử.
b) Nêu thuật toán và hàm xử lý :
+ Tính trung bình cộng của dãy.
+ Xuất ra các số nguyên tố trong dãy theo thứ tự tăng dần.
Câu 2 :
a) Nêu cấu trúc dữ liệu cho cây nhị phân tìm kiếm.


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status