You are on page 1of 2

TRƯỜNG ĐẠI HỌC THỦY LỢI ĐỀ THI KẾT THÚC HỌC PHẦN

KHOA CÔNG NGHỆ THÔNG TIN Môn: Cấu trúc dữ liệu và giải thuật
BỘ MÔN: KHOA HỌC MÁY TÍNH
Phụ trách Bộ môn
Mã số đề: H3

Thời gian làm bài: 60 phút


TS. Nguyễn Huy Đức

Câu 1 (2,5 điểm)


a. Một thuật toán mất 0,4 mili giây cho kích thước đầu vào n1 = 50. Hỏi thuật toán đó
sẽ mất bao lâu cho kích thước đầu vào n2 = 200 nếu thời gian chạy của thuật toán là
t(n) = 3n2 ?
b. Nêu một thuật toán kiểm tra xem một dãy có n phần tử đã được sắp xếp tăng dần
hay chưa? Phân tích thời gian chạy của thuật toán đó dùng ký hiệu O.

Câu 2 (2,5 điểm)


a. Cho ngăn xếp như hình bên phải. Vẽ hình mô tả sự thay đổi trạng
thái của ngăn xếp khi thực hiện lần lượt các thao tác sau đây:
push(31), pop, push(12), pop, pop, push(34).
b. Cho một hàng đợi có dung lượng bằng 4, được tổ chức theo kiểu
mảng vòng tròn như hình bên dưới. Hãy chỉ ra và vẽ cả hình minh
họa một dãy các thao tác enqueue(x) và dequeue phải thực hiện sao cho hàng đợi
chuyển từ trạng thái S1 sang trạng thái S2.

(S1) 15 20  (S2) 24 20 11 27
   
front back back front

Câu 3 (2,5 điểm)


Cho cây AVL như hình bên phải. Chèn lần lượt vào
cây các giá trị 62, 74 và 45.
Chú ý: Phải vẽ hình minh họa đầy đủ cho các bước
trung gian.

Câu 4 (2,5 điểm)


a. Trình bày các bước diễn ra khi thực hiện thuật toán sắp xếp chèn (insertion sort)
trên dãy số { 46, 59, 32, 40, 47 }.
b. Giả sử trong quá trình thực hiện thuật toán sắp xếp trộn (merge sort), ta phải trộn
hai nửa đã sắp xếp A = { 12, 24, 37 } và B = { 10, 35, 43 } thành một dãy C sao
cho C cũng được sắp xếp. Trình bày các bước diễn ra để thu được dãy C.

Ghi chú: Sinh viên không được dùng tài liệu; nộp lại đề thi khi nộp bài.
TRƯỜNG ĐẠI HỌC THỦY LỢI ĐỀ THI KẾT THÚC HỌC PHẦN
KHOA CÔNG NGHỆ THÔNG TIN Môn: Cấu trúc dữ liệu và giải thuật
BỘ MÔN: KHOA HỌC MÁY TÍNH
Phụ trách Bộ môn
Mã số đề: H4

Thời gian làm bài: 60 phút


TS. Nguyễn Huy Đức

Câu 1 (2,5 điểm)


a. Một thuật toán mất 0,6 mili giây cho kích thước đầu vào n1 = 60. Hỏi thuật toán đó
sẽ mất bao lâu cho kích thước đầu vào n2 = 300 nếu thời gian chạy của thuật toán là
t(n) = 5n2 ?
b. Giả sử một ngăn xếp đang có n phần tử và bạn phải cài đặt thuật toán lấy phần tử x
ra khỏi ngăn xếp bằng cách áp dụng thao tác pop nhiều lần liên tiếp. Phân tích thời
gian chạy của thuật toán đó.
Câu 2 (2,5 điểm)
a. Cho ngăn xếp như hình bên phải. Vẽ hình mô tả sự thay đổi trạng
thái của ngăn xếp khi thực hiện lần lượt các thao tác sau đây: pop,
push(27), pop, pop, push(38), push(45).
b. Cho một hàng đợi có dung lượng 4 và được tổ chức theo kiểu mảng
vòng tròn như hình bên dưới. Hãy chỉ ra và vẽ hình minh họa cho một dãy thao tác
enqueue(x) và dequeue phải thực hiện sao cho hàng đợi chuyển từ trạng thái S1 sang
trạng thái S2.
(S1) 25 16 61  (S2) 29 61 15
   
front back back front
Câu 3 (2,5 điểm). Cho hàng đợi ưu tiên
(đống) như hình bên phải.
a. Chèn lần lượt 25 và 30 vào đống.
b. Xóa một giá trị khỏi đống.
Chú ý: Phải vẽ hình minh họa đầy đủ;
làm câu 3b độc lập với câu 3a.

Câu 4 (2,5 điểm)


Xét một bảng băm thăm dò bậc hai có kích thước 11 và có hàm băm h(x) = x % 11.
Biết rằng bảng băm đang rỗng, hãy chèn lần lượt vào bảng băm 5 giá trị sau đây: 16, 28,
64, 53, 75.
Chú ý: Phải vẽ hình minh họa cho các trạng thái trung gian (sau khi chèn mỗi giá trị).

Ghi chú: Sinh viên không được dùng tài liệu; nộp lại đề thi khi nộp bài.

You might also like