Mô tả:
ĐẠI HỌC THÁI NGUYÊN
ĐỀ THI HẾT HỌC PHẦN
KHOA CÔNG NGHỆ THÔNG TIN
Môn thi: Cấu trúc dữ liệu và giải thuật; Hệ: Chính quy
………………
Thời gian chuẩn bị: 45 phút, không kể thời gian giao đề
Mã đề thi: 29
Câu 1( 2 điểm)
Nêu khái niệm cây nhị phân (binary tree)? Các cách cài đặt ? ưu nhược điểm của
từng dạng cài đặt ?
Câu 2 ( 4 điểm)
Một ma trận chỉ chứa rất ít phần tử với giá trị có nghĩa (ví dụ: phần tử 0
được gọi là phần tử có nghĩa) được gọi là ma trận thưa.
Ví dụ :
Hãy dùng cấu trúc danh sách liên kết để tổ chức biễu diễn một ma trận
thưa sao cho tiết kiệm bộ nhớ nhất (chỉ lưu trữ các phần tử có nghĩa).
a) Cấu trúc một nút trong danh sách có dạng như thế nào?
b) Viết dạng cài đặt của ma trận thưa đã cho bằng danh sách liên kết
b) Viết chương trình cho phép nhập, xuất ma trận
Câu 2 (2 điểm)
Hãy dùng stack ở dạng liên kết đơn (cài đặt ngăn xếp bởi con trỏ) để đảo ngược vị
trí của tất cả các phần tử ở vị trí chẵn trong một DSLK đơn, có nút đầu danh sách
được trỏ bởi con trỏ L; các phần tử trong danh sách là các số nguyên
……………………Hết……………………….
Thí sinh không được sử dụng tài liệu, không ghi vào đề thi
CB coi thi không giải thích gì thêm và nộp lại đề thi cho phòng chức năng theo quy chế của bộ
Câu 1: Tương tự câu 1 đề 12
Câu 2
a) (1 đ) Ma trận sẽ thay bằng một danh sách liên kết đơn, danh sách này sẽ lưu các phần
tử có nghĩa của ma trận, mỗi phần tử trong ma trận được tổ chức dưới dạng một nút. Cấu
trúc 1 nút trong danh sách là một bản ghi gồm 4 trường có dạng:
chỉ số hàng
Chỉ số cột
Giá trị
Next
b) Dạng cài đặt của ma trận(1 đ)
Type Nut = Record
ChiSoHang, ChiSoCot: integer;
Giatri: integer;
Next: ^Nut;
End;
Matran = ^nut;
c) Nhập (1 đ), xuất ma trận (1 đ): Tương tự như nhập, xuất danh sách liên kết đơn thông
thường
Câu 3:
Cách làm tương tự câu 3 đề 28, tuy nhiên xét các phần tử ở vị trí chẵn thay vì xét
các phần tử ỏ vị trí lẻ
- Xem thêm -