wayground logo

Free Printable Worksheets

NEW

Font size

S
M
L
XL
Worksheets

Untitled Quiz

Total questions: 58

Worksheet time: 29mins

Name
Class
Date
1.

Phép toán nào được sử dụng để thêm một phần tử vào vị trí p trong danh sách?

a)

DELETE_LIST(p, L)

b)

INSERT_LIST(x, p, L)

c)

RETRIEVE(p, L)

d)

EMPTY_LIST(L)

2.

Phép toán nào sẽ trả về vị trí của phần tử đầu tiên trong danh sách?

a)

FIRST(L)

b)

ENDLIST(L)

c)

LOCATE(x, L)

d)

PREVIOUS(p, L)

3.

Khi nào thì phép toán NEXT(p, L) không xác định?

a)

Khi p là phần tử đầu tiên trong danh sách

b)

Khi p là phần tử cuối cùng trong danh sách

c)

Khi danh sách rỗng

d)

Khi p là vị trí hợp lệ

4.

Trong cài đặt danh sách bằng mảng, để chèn một phần tử x vào vị trí p, chúng ta cần thực hiện bước nào trước tiên?

a)

Chèn x vào vị trí p

b)

Di chuyển các phần tử từ vị trí p đến cuối danh sách ra sau một vị trí

c)

Xóa phần tử tại vị trí p

d)

Đổi giá trị phần tử tại vị trí p

5.

Phép toán nào dùng để xác định vị trí sau phần tử cuối trong danh sách?

a)

NEXT(p, L)

b)

PREVIOUS(p, L)

c)

ENDLIST(L)

d)

LOCATE(x, L)

6.

Cách nào sau đây dùng để khởi tạo một danh sách rỗng?

a)

Cho độ dài danh sách bằng 1

b)

Cho độ dài danh sách bằng MaxLength

c)

Cho độ dài danh sách bằng 0

d)

Cho tất cả các phần tử bằng NULL

7.

Trong ngăn xếp, phép toán thêm một phần tử vào ngăn xếp được gọi là gì?

a)

Enqueue

b)

Dequeue

c)

Pop

d)

Push

8.

Kiểu dữ liệu ngăn xếp hoạt động theo nguyên tắc nào?

a)

FIFO (First In First Out)

b)

FILO (First In Last Out)

c)

LIFO (Last In First Out)

d)

LILO (Last In Last Out)

9.

Hàng đợi (Queue) hoạt động theo nguyên tắc nào?

a)

LIFO (Last In First Out)

b)

FILO (First In Last Out)

c)

FIFO (First In First Out)

d)

LILO (Last In Last Out)

10.

Phép toán nào được dùng để xóa phần tử ở đầu ngăn xếp?

a)

Enqueue

b)

Dequeue

c)

Pop

d)

Push

11.

Khi thêm một phần tử vào hàng đợi (Queue), phép toán được gọi là gì?

a)

Enqueue

b)

Dequeue

c)

Push

d)

Pop

12.

Trong danh sách liên kết kép, mỗi phần tử chứa bao nhiêu con trỏ?

a)

Một con trỏ

b)

Hai con trỏ

c)

Ba con trỏ

d)

Bốn con trỏ

13.

Để kiểm tra xem một hàng đợi có rỗng không, chúng ta kiểm tra điều gì?

a)

Front = Rear

b)

Front = -1

c)

Rear = MaxLength

d)

Top_idx = 0

14.

Ưu điểm của danh sách liên kết kép là gì?

a)

Duyệt danh sách theo cả hai hướng

b)

Chiếm ít bộ nhớ hơn danh sách liên kết đơn

c)

Thao tác thêm/xóa nhanh hơn

d)

Không cần con trỏ

15.

Phép toán nào được sử dụng để khởi tạo hàng đợi rỗng?

a)

MakeNull_Stack(S)

b)

MakeNull_Queue(Q)

c)

Empty_Stack(S)

d)

Full_Queue(Q)

16.

Phép toán nào trả về giá trị của phần tử tại vị trí p trong danh sách?

a)

INSERT_LIST(x, p, L)

b)

DELETE_LIST(p, L)

c)

RETRIEVE(p, L)

d)

EMPTY_LIST(L)

17.

Khi cài đặt ngăn xếp bằng mảng, làm thế nào để thêm phần tử mới vào ngăn xếp?

a)

Giảm chỉ số đỉnh Top_idx

b)

Tăng chỉ số đỉnh Top_idx

c)

Đặt phần tử mới vào vị trí đầu tiên

d)

Đặt phần tử mới vào cuối ngăn xếp

18.

Trong cài đặt danh sách bằng con trỏ, làm thế nào để thêm phần tử vào vị trí p?

a)

Cấp phát ô nhớ mới và nối các con trỏ lại với nhau

b)

Di chuyển các phần tử về phía trước

c)

Đặt phần tử mới vào đầu danh sách

d)

Xóa phần tử ở vị trí p

19.

Một hàng đợi được coi là đầy khi nào?

a)

Khi Front = Rear

b)

Khi số phần tử trong hàng đợi bằng MaxLength

c)

Khi không có phần tử nào

20.

Để xóa phần tử khỏi danh sách liên kết kép, chúng ta làm gì?

a)

Gắn con trỏ Next của phần tử trước p đến phần tử sau p

b)

Đặt tất cả các con trỏ thành NULL

c)

Chèn phần tử mới vào vị trí p

d)

Di chuyển các phần tử về phía sau

21.

Khái niệm nào sau đây đúng về cây nhị phân?

a)

Cây không có nút nào có nhiều hơn hai nút con.

b)

Cây mà mỗi nút có đúng một nút con.

c)

Cây mà không có một lá nào.

d)

Cây chỉ có một nút gốc.

22.

Phép duyệt trung tự (Inorder) của cây nhị phân được thực hiện theo thứ tự nào?

a)

Nút gốc -> con trái -> con phải

b)

Con trái -> nút gốc -> con phải

c)

Con phải -> nút gốc -> con trái

d)

Nút gốc -> con phải -> con trái

23.

Trong cây nhị phân tìm kiếm, điều kiện nào sau đây đúng?

a)

Nút gốc luôn nhỏ hơn các nút con trái và lớn hơn các nút con phải.

b)

Nhãn tại mỗi nút lớn hơn nhãn của tất cả các nút thuộc cây con bên trái và nhỏ hơn nhãn của tất cả các nút thuộc cây con bên phải.

c)

Mọi nút đều có hai con.

d)

Không có hai nút nào có cùng giá trị.

24.

Thời gian tìm kiếm một nút trong cây nhị phân tìm kiếm (BST) cân bằng là bao nhiêu?

a)

O(N)

b)

O(log N)

c)

O(N2)O(N^2)

d)

O(1)

25.

Trong cây nhị phân đầy đủ, mỗi nút không phải lá sẽ có bao nhiêu nút con?

a)

Không có nút con

b)

Chỉ có một nút con

c)

Chính xác hai nút con

d)

Bất kỳ số nút con nào

26.

Để thêm một nút có khóa x vào cây nhị phân tìm kiếm (BST), bước đầu tiên cần thực hiện là gì?

a)

Xóa nút gốc.

b)

Tìm kiếm xem đã có x trên cây chưa.

c)

Thêm x vào ngay tại gốc.

d)

Đổi giá trị của nút con phải.

27.

Trong trường hợp xóa một nút trong BST có hai cây con, chúng ta có thể thay thế nút này bằng:

a)

Nút lá gần nhất

b)

Nút có nhãn lớn nhất của cây con bên trái hoặc nhỏ nhất của cây con bên phải

c)

Nút gốc

d)

Bất kỳ nút nào trên cây

28.

Một cây nhị phân đầy đủ chiều cao h có bao nhiêu nút lá?

a)

2h2^h

b)

2(h+1)12^{(h + 1)} - 1

c)

h2h^2

d)

2 * h

29.

Độ sâu của một nút được định nghĩa là gì?

a)

Chiều cao của nút đó

b)

Độ dài đường đi từ nút đó đến nút lá xa nhất

c)

Độ dài đường đi từ nút gốc đến nút đó

d)

Số cây con của nút đó

30.

Cây nhị phân cân bằng về chiều cao có đặc điểm nào sau đây?

a)

Mọi nút có cùng chiều cao

b)

Chiều cao của cây con trái và phải của bất kỳ nút nào khác nhau không quá một đơn vị

c)

Chỉ có một nút gốc và không có nút con

d)

Chiều cao của tất cả các nút là như nhau

31.

Cây nhị phân tìm kiếm (BST) có tính chất đặc trưng nào sau đây?

a)

Nhãn của tất cả các nút con phải lớn hơn nhãn của nút gốc

b)

Nhãn của tất cả các nút con trái nhỏ hơn nhãn của nút gốc

c)

Các nút con có thể hoán đổi vị trí tự do

d)

Mọi nút đều có ít nhất hai cây con

32.

Trong cây nhị phân, nếu nút A ở mức i và nút B ở mức i+1, thì A là gì của B?

a)

Nút con

b)

Nút lá

c)

Nút cha

d)

Nút gốc

33.

Một cây có bao nhiêu nút nếu đó là cây nhị phân đầy đủ với chiều cao h?

a)

2h2^h

b)

2(h+1)12^{(h+1)} - 1

c)

h2h^2

d)

2 * h

34.

Khi nào một cây được gọi là cây nhị phân hoàn chỉnh?

a)

Mọi mức đều được lấp đầy, ngoại trừ có thể mức cuối cùng từ trái sang phải

b)

Mỗi nút có đúng hai nút con

c)

Mỗi nút lá có cùng mức

d)

Cây không có nút con

35.

Định nghĩa đúng về rừng (forest) trong lý thuyết cây là gì?

a)

Một tập hợp các cây có cùng số nút

b)

Một tập hợp các cây không có điểm chung nào

c)

Một tập hợp nhiều cây

d)

Một cây có nhiều nhánh con

36.

Chiều cao của cây nhị phân là gì?

a)

Số nút tối đa trên một mức của cây

b)

Độ dài đường đi từ nút gốc đến nút lá xa nhất

c)

Số cây con của nút gốc

d)

Độ sâu của nút gốc

37.

Phương pháp cài đặt cây nào sau đây sử dụng danh sách liên kết?

a)

Cài đặt cây bằng mảng

b)

Cài đặt cây bằng danh sách các nút con

c)

Cài đặt cây bằng con trỏ

d)

Cài đặt cây bằng ma trận kề

38.

Quy trình nào sau đây được sử dụng để duyệt qua tất cả các nút của cây?

a)

Duyệt đơn giản

b)

Duyệt vòng lặp

c)

Duyệt tiền tự, trung tự, và hậu tự

d)

Duyệt đệ quy và vòng lặp

39.

Để xóa một nút có khóa x trong cây nhị phân tìm kiếm, trường hợp nào sau đây là phức tạp nhất?

a)

Nút x là nút lá

b)

Nút x có một cây con

c)

Nút x có hai cây con

d)

Nút x nằm ở gốc cây

40.

Cây AVL là loại cây gì?

a)

Cây nhị phân tìm kiếm có cân bằng chiều cao

b)

Cây nhị phân tìm kiếm không cân bằng

c)

Cây nhị phân đầy đủ

d)

Cây chỉ có nút gốc

41.

Ai là người phát minh ra cây AVL?

a)

Donald Knuth

b)

Thomas Cormen và Charles Leiserson

c)

G. M. Adelson-Velsky và E. M. Landis

d)

Adam Drozdek

42.

Trong cây AVL, chênh lệch chiều cao giữa cây con trái và cây con phải của một nút bất kỳ tối đa là bao nhiêu?

a)

0

b)

1

c)

2

d)

3

43.

Phép quay đơn sang phải được sử dụng trong trường hợp nào?

a)

Cây mất cân bằng bên trái của con trái (L-L)

b)

Cây mất cân bằng bên phải của con phải (R-R)

c)

Cây mất cân bằng bên phải của con trái (R-L)

d)

Cây mất cân bằng bên trái của con phải (L-R)

44.

Khi cây AVL bị mất cân bằng bên phải của con trái, thao tác nào cần thực hiện?

a)

Quay đơn sang trái

b)

Quay đơn sang phải

c)

Quay kép trái-phải

d)

Quay kép phải-trái

45.

Chỉ số cân bằng của một nút trong cây AVL là gì nếu nút đó cân bằng?

a)

0

b)

1

c)

2

d)

-1

46.

Khi thêm một nút vào cây AVL, bước tiếp theo sau khi thêm là gì?

a)

Tìm kiếm nút mới

b)

Xóa nút mới

c)

Kiểm tra và cân bằng lại cây nếu cần

d)

Không cần thực hiện thêm bước nào

47.

Phép quay đơn sang trái được thực hiện trong trường hợp nào?

a)

L-L

b)

R-R

c)

L-R

d)

R-L

48.

Điều kiện cân bằng của một cây nhị phân tìm kiếm cân bằng về chiều cao là gì?

a)

Tổng số nút của cây con trái và cây con phải bằng nhau

b)

Chiều cao của cây con trái và cây con phải chênh lệch tối đa là 1

c)

Cây chỉ có một nút gốc

d)

Cây có chiều cao tối đa là 3

49.

Phép quay kép phải-trái được sử dụng trong trường hợp nào?

a)

Cây mất cân bằng bên trái của con trái

b)

Cây mất cân bằng bên phải của con phải

c)

Cây mất cân bằng bên trái của con phải

d)

Cây mất cân bằng bên phải của con trái

50.

Từ điển là kiểu dữ liệu trừu tượng cho phép thực hiện những thao tác nào sau đây?

a)

Thêm (INSERT), Bớt (DELETE), Tìm kiếm (MEMBER)

b)

Sao chép (COPY), Chia tách (SPLIT), Hợp nhất (MERGE)

c)

Sắp xếp (SORT), Tìm kiếm (SEARCH), Xóa (REMOVE)

d)

Thêm (ADD), Sao chép (COPY), Xóa (DELETE)

51.

Phương pháp băm nào sử dụng phép toán chia để xác định chỉ số băm?

a)

Phương pháp nhân

b)

Phương pháp tách

c)

Phương pháp chia

d)

Phương pháp gấp khóa

52.

Trong bảng băm đóng, khi xảy ra đụng độ (collision), phương pháp nào thường được sử dụng để giải quyết?

a)

Bấm lại tuyến tính

b)

Gắp khóa

c)

Phân chia theo danh sách

d)

Phép quay cây AVL

53.

Hàm băm H(x)=x%BH(x) = x % BH(x)=x%B sử dụng phương pháp băm nào?

a)

Phương pháp chia

b)

Phương pháp nhân

c)

Phương pháp tách khóa

d)

Phương pháp gấp khóa

54.

Trong cài đặt bảng băm mở, khi kiểm tra một phần tử có tồn tại hay không, thao tác nào sẽ được thực hiện?

a)

Duyệt qua danh sách liên kết tại chỉ số băm

b)

Tìm kiếm nhị phân trên mảng

c)

Thực hiện phép quay cây

d)

Chia tách danh sách

55.

Trong bảng băm đóng, nếu một phần tử bị xóa, giá trị nào sẽ được gán vào vị trí đó?

a)

NULL

b)

Giá trị Deleted (-1000)

c)

Giá trị Empty (1000)

d)

Giá trị mặc định là 0

56.

Phương pháp băm lại tuyến tính có công thức như thế nào?

a)

Hi(x)=(H(x)+i)%BH_i(x) = (H(x) + i) \% B

b)

Hi(x)=(H(x)×i)%BH_i(x) = (H(x) \times i) \% B

c)

Hi(x)=(H(x)i)%BH_i(x) = (H(x) - i) \% B

d)

Hi(x)=(H(x)%B+i)%BH_i(x) = (H(x) \% B + i) \% B

57.

Khi sử dụng bảng băm mở, phần tử mới được thêm vào sẽ được lưu trữ ở đâu?

a)

Trong mảng chính của bảng băm

b)

Trong danh sách liên kết tại chỉ số băm tương ứng

c)

Ở vị trí ngẫu nhiên trong bảng băm

d)

Ở đầu danh sách chính của bảng băm

58.

Phương pháp băm nào có thể gặp vấn đề đụng độ nhiều nhất khi số lượng phần tử tăng cao?

a)

Phương pháp băm đóng

b)

Phương pháp băm mở

c)

Phương pháp nhân

d)

Phương pháp tách khóa