wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

CTDL Lần 1

Total questions: 33

Worksheet time: 17mins

Name
Class
Date
1.

Cài đặt danh sách liên kết là:

a)

Dùng một mảng (array) để lưu trữ liên tiếp các phần tử của danh sách bắt đầu từ vị trí đầu tiên của mảng

b)

Danh sách gồm nhiều nút liên kết với nhau. Mỗi nút của danh sách gồm 2 trường: trường data để lưu giá trị phần tử trong danh sách, trường next lưu địa chỉ của tất cả các nút trong danh sách

c)

Danh sách gồm nhiều nút liên kết với nhau. Mỗi nút của danh sách gồm 2 trường: trường Data để lưu giá trị phần tử trong danh sách, trường next lưu địa chỉ của nút tiếp theo trong danh sách

d)

Dùng một mảng (array) để lưu trữ liên tiếp các phần tử của danh sách bắt đầu từ vị trí đầu tiên của mảng. Mỗi phần tử của mảng gồm 2 trường: Trường Elements để giữ nội dung của phần tử trong danh sách. Trường Next là một con trỏ giữ địa chỉ của ô kế tiếp

2.

Chiều cao của cây là gì?

a)

Số cây con của cây

b)

Cấp lớn nhất của các nút trên cây

c)

Mức lớn nhất của các nút trên cây

d)

Số lượng nút của cây

3.

Cho dãy số {6 1 3 0 5 7 9 2 8 4}. Áp dụng phương pháp sắp xếp lựa chọn (Select sort) sau hai lần gặp của giải thuật ta có kết quả: {0 1 3 6 5 7 9 2 8 4}. Dãy số thu được sau lần lặp thứ ba là:

a)

{0 1 3 6 5 7 9 2 8 4}

b)

{0 1 2 6 5 7 9 3 4 8}

c)

{0 1 2 6 5 7 9 3 8 4}

d)

{0 1 2 3 4 5 6 7 8 9}

4.

Cho dãy số sau: 14, 32, 10, 43, 57, 87, 55, 36, 97, 11. Áp dụng phương pháp tìm kiếm tuần tự, sau bao nhiêu lần thực hiện phép so sánh ta sẽ tìm thấy số 43?

a)

4 lần

b)

3 lần

c)

5 lần

d)

2 lần

5.

Cho L là danh sách sách liên kết với con trỏ head tham chiếu đến nút đầu trong danh sách. Con trỏ curNode tham chiếu đến nút cần xóa trong danh sách, con trỏ preNode tham chiếu đến nút phía trước nút cần xóa. Lệnh nào cho phép xóa curNode khỏi danh sách?

6.

Hàng đợi là gì?

a)

Hàng đợi là kiểu danh sách tuyến tính trong đó, phép bổ sung phần tử ở một đầu, gọi là lối sau (back) và phép loại bỏ phần tử được thực hiện ở đầu kia, gọi là lối trước (front)

b)


Hàng đợi là kiểu danh sách tuyến tính trong đó, phép bổ sung một phần tử được thực hiện ở một đầu, gọi là lối sau (back) hay lối trước (front). Phép loại bỏ không thực hiện được.

c)

Hàng đợi là kiểu danh sách tuyến tính trong đó, phép bổ sung một phần tử hay loại bỏ được thực hiện ở một đầu danh sách gọi là đỉnh (Top).

d)

Là một danh sách tuyến tính trong đó phép bổ sung một phần tử và phép loại bỏ một phần tử được thực hiện ở tại một vị trí bất kì trong danh sách.

7.

Khi cài đặt hàng đợi bằng mảng vòng lưu trữ được tối đa m phần tử, front và back tương ứng lưu vị trí của phần tử đầu hàng đợi và phần tử cuối hàng đợi. Nếu hàng đợi không rỗng và thực hiện loại bỏ một phần tử khỏi hàng đợi thì các giá trị front và back thay đổi như thế nào?

a)


front không thay đổi; back = (back + 1) % m (-> Thêm một phần tử)

b)

front = front + 1; back không thay đổi

c)


front không thay đổi; back = back + 1

d)

front = (front + 1) % m; back không thay đổi

8.

Khi cài đặt hàng đợi sử dụng kiểu List trong Python trong đó đầu List tương ứng với đầu hàng đợi và đuôi List tương ứng với đuôi hàng đợi. Để cài đặt phép toán enqueue(x), ta cần gọi đến thao tác nào của kiểu List?

a)

pop(x)

b)

remove(x)

c)

insert(x)

d)

append(x)

9.

Khi cài đặt ngăn xếp trên cơ sở danh sách liên kết với nút đầu danh sách liên kết là đỉnh ngăn xếp. Phép toán getTop() thực hiện việc gì?

a)

Trả về địa chỉ của nút đầu tiên trong danh sách liên kết

b)

Thêm một nút mới vào đầu danh sách

c)

Trả về trường dữ liệu của nút đầu tiên trong danh sách liên kết

d)

Xóa nút đầu tiên của danh sách

10.

Khi lưu trữ cây nhị phân dưới dạng mảng, nếu nút đầu tiên ở vị trí 0 và vị trí của nút cha trong mảng là i thì nút con trái ở vị trí nào trong mảng?

a)


i + 1

b)

i - 1

c)


2*i + 1 (Nút con phải: 2*i + 2)

d)

2*i

11.

Khi thực hiện duyệt theo thứ tự giữa trên cây nhị phân tìm kiếm, dãy thu được có đặc điểm gì?

a)

Dãy gồm các khóa được sắp xếp theo thứ tự tăng dần đến khóa nút gốc, sau đó giảm dần

b)

Dãy gồm các khóa được sắp xếp theo thứ tự tăng dần

c)

Dãy gồm các khóa được sắp xếp theo thứ tự giảm dần

d)

Dãy gồm các khóa được sắp xếp theo thứ tự giảm dần đến khóa nút gốc, sau đó tăng dần

12.

Khóa tìm kiếm là gì?

a)

Là một thành phần trong bản ghi dữ liệu được dùng để tìm kiếm thông tin cụ thể trong một tập hợp dữ liệu

b)

Là trường dùng để liên kết giữa hai bảng dữ liệu có liên quan đến nhau

c)


Là một thành phần trong bản ghi dữ liệu được sử dụng để sắp xếp các bản ghi theo một thứ tự cho trước

d)

Là trường xác định bản ghi dữ liệu trong tập hợp dữ liệu

13.

Kiểu dữ liệu là gì?

a)

Là tập hợp các giá trị và tập hợp các phép toán có thể thực hiện trên tất cả các giá trị đó

b)

Là tập hợp các giá trị và tập hợp các phép toán có thể thực hiện trên các giá trị bất kì

c)

Là một tập hợp các giá trị số nguyên hoặc số thực

d)


Là tập hợp các phép toán có thể thực hiện trên các giá trị số nguyên hoặc số thực

14.

Ngăn xếp còn gọi là danh sách hoạt động theo nguyên tắc nào?

a)

FILO

b)


FOLI

c)

LIFO

d)

FIFO

15.

Trong các phát biểu về thuật toán sau, phát biểu nào SAI?

a)

Các bước của thuật toán được mô tả chính xác

b)

Thuật toán có thể áp dụng giải một số bài toán có dạng đã cho (sửa: một số -> tất cả)

c)

Thuật toán cần phải đưa được đầu ra sau một số hữu hạn các bước

d)

Thuật toán giải một bài toán là một thủ tục xác định gồm một dãy hữu hạn các bước cần thực hiện để từ một đầu vào cho trước của bài toán sẽ thu được đầu ra tương ứng

16.

Trong giải thuật sắp xếp vun đống, ta có 4 thủ tục con (Insert – thêm 1 phần tử vào cây; siftdown – vun đống lại sau khi loại một phần tử khối Heap; siftup – vun đống sau khi thêm một phần tử vào cây; Remove – loại 1 phần tử khỏi cây nhị phân). Để sắp xếp các phần tử trong dãy theo phương pháp vun đống, ta thực hiện 4 thủ tục trên theo thứ tự như thế nào?

a)

Insert – Siftup – Siftdown – Remove

b)


Insert – Sifup – Remove – Siftdown

c)

Remove – Sifdown – Insert – Siftup

d)

Siftup – Siftdownn – Remove - Insert

17.

Ý tưởng của phương pháp sắp xếp nổi bọt là gì?

a)

Phân đoạn dãy thành nhiều dãy con và lần lượt trộn hai dãy con thành dãy lớn hơn, cho đến khi thu được dãy ban đầu đã được sắp xếp

b)

Bắt đầu từ cuối dãy đến đầu dãy, ta lần lượt so sánh hai phần tử kế tiếp nhau, nếu phần tử nào nhỏ hơn được đứng vị trí trên

c)


Lần lượt lấy phần tử của danh sách chèn vị trí thích hợp của nó trong dãy bằng cách đẩy các phần tử lớn hơn xuống

d)

Chọn phần tử bé nhất xếp vào vị trí thứ nhất bằng cách đổi chỗ phần tử bé nhất với phần tử thứ nhất. Tương tự đối với phần tử nhỏ thứ hai, ba,…

18.

Phương án nào sau đây KHÔNG phải là đặc trưng của thuật toán?

a)


Nhất quán

b)

Tổng quát

c)

Đơn trị

d)

Chính xác

19.

Sau khi thực hiện đoạn lệnh sau, nội dung hàng đợi là gì?

a)


4, 6, 8

b)

0, 2, 4, 6, 8

c)

2, 4, 6, 8

d)

0, 2, 4, 6, 8, 9

20.

Khi cài đặt hàng đợi sử dụng kiểu List trong Python trong đó đầu List tương ứng với đầu hàng đợi và đuôi List tương ứng với đuôi hàng đợi. Để cài đặt phép toán dequeue(), ta cần gọi đến thao tác nào của kiểu List?

a)

remove(-1)

b)

pop(0)

c)

remove(0)

d)

pop(-1)

21.

 Khi cài đặt hàng đợi bằng mảng vòng, các phần tử của hàng đợi được lưu trong mảng queueArray, font _back là các điểm đánh dấu phần tử đầu tiên và phần tử cuối cùng của hàng đợi trong mảng. Đoạn lệnh sau thực hiện việc gì?

a)

Thêm một phần tử có giá trị item vào đầu hàng đợi

b)

Loại bỏ phần tử có giá trị item ở đầu hàng đợi

c)


Loại bỏ phần tử có giá trị item ở cuối hàng đợi

d)

Thêm một phần tử có giá trị item vào cuối hàng đợi

22.

Khi lưu trữ cây nhị phân dưới dạng mảng, nếu nút đầu tiên ở vị trí 0 và vị trí của một nút trong mảng là 8 thì nút cha ở vị trí nào trong mảng?

a)

3

b)

4

c)

2

d)

5

23.

Thủ tục sau áp dụng giải thuật sắp xếp nào?

a)

Merge sort

b)

Select sort

c)

Bubble sort

d)

Insert sort

24.

Tư tưởng của giải thuật tìm kiếm trên cây nhị phân tìm kiếm là gì?

a)

Tại mỗi bước tiến hành so sánh X với phần tử ở giữa của dãy. Dựa vào bước so sánh này quyết định giới hạn dãy tìm kiếm nằm ở nửa trên, hay nửa dưới của dãy hiện hành.

b)

Nếu giá trị cần tìm nhỏ hơn gốc thì thực hiện tìm kiếm trên cây con trái, ngược lại ta việc tìm kiếm được thực hiện trên cây con phải.

c)

Lần lượt chia dãy thành hai dãy con dựa vào phần tử khoá, sau đó thực hiện việc tìm kiếm trên hai đoạn đã chia.

d)

Nếu giá trị cần tìm nhỏ hơn gốc thì thực hiện tìm kiếm trên cây con phải, ngược lại ta việc tìm kiếm được thực hiện trên cây con trái.

25.

Cho dãy số sau: 10 11 14 32 36 43 55 57 87 97. Áp dụng phương pháp tìm kiếm nhị phân để tìm kiếm số 15, sau lần phân đoạn thứ nhất của dãy, quá trình tìm kiếp tiếp tục trên dãy nào?

a)

[14 32 10 43 57]

b)

[43 55 57 87 97]

c)

[11 14 32 36 43 55]

d)

[10 11 14 32 36]

26.

Điều kiện dừng đệ quy của hàm sau là gì?

a)


n = 1

b)

n < 2

c)

n = 2

d)

n = 1 hoặc n = 2

27.

Khi thực hiện duyệt theo thứ tự giữa trên cây nhị phân tìm kiếm, dãy thu được có đặc điểm gì?

a)

Dãy gồm các khóa được sắp xếp theo thứ tự tăng dần

b)

Dãy gồm các khóa được sắp xếp theo thứ tự giảm dần đến khóa nút gốc, sau đó tăng dần

c)

Dãy gồm các khóa được sắp xếp theo thứ tự giảm dần

d)

Dãy gồm các khóa được sắp xếp theo thứ tự tăng dần đến khóa nút gốc, sau đó giảm dần

28.

Hàm sau trả về giá trị nào khi gọi fact(4)?

a)

2

b)

4

c)

Chương trình báo lỗi

d)

Lặp vô hạn vì không có điều kiện dừng

29.

Đâu là phát biểu ĐÚNG về danh sách tuyến tính?

a)


Các phần tử của danh sách có thứ tự tuyến tính trong đó các thao tác thêm vào và loại bỏ được thực hiện ở một đầu.

b)

Các phần tử của danh sách có thứ tự tuyến tính theo vị trí xuất hiện của chúng (position).

c)

Tất cả đều sai

d)

Các phần tử của danh sách có thể truy nhập ngẫu nhiên.

30.

Cho L là danh sách liên kết với head là biến trỏ tới nút đầu trong danh sách. Đoạn lệnh sau cho phép thực hiện việc gì?

a)


Tìm nút có giá trị item và thực hiện xóa

b)

Xóa nút đầu tiên có giá trị item trong danh sách

c)

Thêm một nút mới có giá trị item vào đầu danh sách

d)


Thêm một nút mới có giá trị item vào sau nút đầu tiên của danh sách

31.


Thêm một nút mới có giá trị item vào sau nút đầu tiên của danh sách

32.

Để xóa nút có giá trị 35 trong danh sách, ta cần phải biết địa chỉ của nút nào?

a)

Nút có giá trị 35 và 50

b)


Nút có giá trị 27

c)


Nút có giá trị 63 và 27

d)


Nút có giá trị 35

33.

Khi cài đặt ngăn xếp trên cơ sở danh sách liên kết với nút đầu danh sách liên kết là đỉnh ngăn xếp. Phép toán push(x) thực hiện việc gì?

a)

Xóa nút đầu trong danh sách liên kết

b)

Thêm một nút có trường dữ liệu x vào cuối danh sách

c)

Xóa nút cuối trong danh sách liên kết

d)

Thêm một nút có trường dữ liệu x vào đầu danh sách