Font size
WorksheetsCTDLGT_01
Total questions: 106
Worksheet time: 3hrs 39mins
Cho hàm sau:
int M(int n) {
if(n<3) return 7;
if(n%21) return n + M(n-4);
return n + M(n-5);
Kết quả của M(10) là.........
A. 22
B. 23
C. 18
D. 25
Cho ngăn xếp cài đặt trên C char S[4] chỉ số định T = - 1 (ngăn xếp rỗng), giải thuật PUSH(S, char) đẩy vào đỉnh ngăn xếp 1 ký tự, Print((POP(S, char)) lấy 1 ký tự từ đỉnh ngăn xếp và in lên màn hình. Sau các câu lệnh : PUSH(S,'A'); PUSH(S,'B'); PUSH(S,'C'); Print((POP(S,char)); PUSH(S,'D'); PUSH(S, 'E'); PUSH(S, 'F'); Giá trị của T sẽ là:
A. 1
B. 2
C. 3
D. 4
Dạng hậu tố của biểu thức a+b*c là.....
A. a+bc*
B. abc+*
C. abc*+
D. a(bc*)+
Giải thuật sắp xếp kiểu lựa chọn luôn thực hiện thao tác gì?
A. Tìm số bé nhất
B. Duyệt từng phần tử của dãy khóa
C. Đưa khóa có giá trị lớn nhất xuống cuối dãy
D. Tìm sô lớn nhất
Cho giải thuật đếm số nút trên cây nhị phân T: DemNut(T, int &SoNut) { if(T!=NULL) { SoNut++; DemNut(T.lptr); DemNut(T.rptr); } }. Để đếm số nút trên cây nhị phân T vào biến int n, trước khi gọi giải thuật DemNut(T, n); Giá trị của n Phải bằng bao nhiêu thì đúng?
A. -1
B. 1
C. 2
D. 0
Trong thuật toán chuyển đổi một số nguyên từ hệ thập phân sang hệ nhị phân, người ta sẽ dùng cấu trúc dữ liệu nào dưới đây để lưu số dư của các phép chia.
Queue
Stack
Array
Tree
Ngăn xếp được ứng dụng trong thuật toán “chuyển đổi một biểu thức toán học ở dạng Trung tố sang Hậu tố”. Hãy cho biết biểu thức hậu tố nhận được sau khi chúng ta cho chạy giải thuật “chuyển biểu thức từ trung tố sang hậu tố” với input là: 2 + 3 * 4 - 5
2 3 + * 4 5 -
2 3 4 5 * + -
2 3 4 * 5 + -
2 3 4 * + 5 -
Thứ tự nào sau đây cho phép duyệt đệ quy cây nhị phân theo thứ tự trước
Duyệt cây con trái theo thứ tự trước -> thăm gốc -> duyệt cây con phải theo thứ tự trước
Duyệt cây con trái theo thứ tự trước -> duyệt cây con phải theo thứ tự trước -> thăm gốc
Thăm gốc -> duyệt cây con trái theo thứ tự trước -> duyệt cây con phải theo thứ tự trước
Thăm gốc -> duyệt cây con phải theo thứ tự trước -> duyệt cây con trái theo thứ tự trước
Thuật toán sau đây sắp xếp dãy a gồm n phần tử thành dãy mới có thứ tự tăng dần.
for (int i = 0; i < n - 1; i++) {
int vt = i;
for (int j = i + 1; j < n; j++)
if (a[vt] > a[j])
vt = j;
if (vt != i) {
tg = a[vt];
a[vt] = a[i];
a[i] = tg; }
}
Thuật toán trên được gọi là
Sắp xếp chọn
Sắp xếp nổi bọt
Sắp xếp chèn
Sắp xếp trộn
Bạn phải sắp xếp một danh sách L bao gồm: một danh sách đã sắp xếp và một vài phần tử ngẫu nhiên nào đó. Phương pháp sắp xếp nào sau đây sẽ đặc biệt phù hợp cho một nhiệm vụ như vậy?
Sắp xếp nổi bọt
Sắp xếp lựa chọn
Sắp xếp nhanh
Sắp xếp chèn
Một phần tử chốt để phân chia dãy chưa sắp xếp được sử dụng trong …
Sắp xếp trộn
Sắp xếp lựa chọn
Sắp xếp chèn
Sắp xếp nhanh
Thuật toán sắp xếp nào sau đây có độ phức tạp trong trường hợp xấu nhất thấp nhất?
Merge Sort
Quick Sort
Selection Sort
Bubble Sort
Thuật toán sắp xếp nào là tốt nhất nếu danh sách đã có thứ tự?
Sắp xếp nhanh (Quick Sort)
Sắp xếp chèn (Insertion Sort)
Không có
Sắp kiểu trộn (Merge Sort)
Trong SELECTION SORT, dãy A[5] ={ 16, 14, 12, 10, 8}
Cần thực hiện bao nhiêu lần chọn phần tử nhỏ nhất để sắp xếp mảng tăng dần?
3 lần
4 lần
2 lần
1 lần
Hãy cho biết ý tưởng nào sau đây nói về phương pháp sắp xếp chọn tăng dần (Selection sort)?
Phân đoạn thành nhiều dãy con và trộn lần lượt 2 dãy con thành dãy lơn hơn cho đến khi dãy được sắp xếp.
Lần lượt lấy từng phần tử trong dãy và chèn vào vị trí thích hợp
Chọn phần tử bé nhất xếp vào vị trí thứ 1, tương tự với phần tử nhỏ thứ 2 cho đến phần tử cuối cùng
Bắt đầu từ cuối dãy đến đầu dãy, lấy 2 phần tử kế nhau và so sánh với nhau, phần tử nào bé đứng trên
Hãy cho biết ý tưởng nào sau đây nói về phương pháp sắp xếp Chèn tăng dần (Insertion sort)?
Phân đoạn thành nhiều dãy con và trộn lần lượt 2 dãy con thành dãy lơn hơn cho đến khi dãy được sắp xếp.
Lần lượt lấy từng phần tử trong danh sách chèn vào 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
Chọn phần tử bé nhất xếp vào vị trí thứ 1, tương tự với phần tử nhỏ thứ 2 cho đến phần tử cuối cùng
Bắt đầu từ cuối dãy đến đầu dãy, lấy 2 phần tử kế nhau và so sánh với nhau, phần tử nào bé đứng trên
Theo thuật toán sắp xếp chọn, sau bước thứ i thì các phần tử A[0]. A[1]..... A[i] đã được sắp xếp đúng. Đúng hay sai?
Đúng
Sai
Đánh giá độ phức tạp của giải thuật sau:
int KiemTra(int n) {
iint i;
for (i = 2; i<n; i++)
if (n%i == 0) return 0;
return1;
}
O(n3)
O(n2)
O(n)
O(log2n)
Độ phức tạp của giải thuật không đệ quy tính n! (n giai thừa) là bao nhiêu ?
O(n)
O(log2n)
O(n2)
O(n3)
Mối quan hệ giữa cấu trúc dữ liệu và giải thuật có thể minh họa bằng đồng thức nào dưới đây?
Giải thuật + Chương trình = Cấu trúc dữ liệu
Cấu trúc dữ liệu + Chương trình = Giải thuật
Cấu trúc dữ liệu + Giải thuật = Chương trình
Giải thuật = Chương trinh
Cho thời gian thực hiện một giải thuật T(n) = 10n2 + 100n + c (c là hằng số, n kích thước dữ liệu đầu vào). Cho biết độ phức tạp của giải thuật với thời gian thực hiện đã cho
O(log2n)
O(1)
O(n2)
O(n)
Với khai báo nguyên mẫu hàm void hoanvi (int a, int b) là hàm hoàn vị hai giá trị của a, b cho nhau. Đoạn chương trình sau cho kết quả như thế nào ?
int main () {
int a = 8;
int b = 10;
hoanvi(a,b);
printf("a = %d, b = %d", a, b);
}
a = 10, b = 10
a = 8, b = 8
a = 10, b = 8
a = 8, b = 10
Cho biết độ phức tạp của giải thuật sau:
(1) sum = 0;
(2) for (i=0;i<n;i++)
(3) sum = sum + i*i;
O(n)
O(n2)
O(n3)
O(n4)
Nếu thời gian thực hiện lần lượt của hai đoạn chương trình P1 và P2 là: T1(n) = O(n), T2(n) = O(n) thì thời gian thực hiện P1 và lồng nhau sẽ T(n). Cho biết phương án đúng với T(n).
O(n)
O(log2n)
O(n2)
O(n3)
Trong ứng dụng quản lý danh sách bệnh nhân đang chờ tại một phòng khám X. Hãy lựa chọn cấu trúc dữ liệu phù hợp nhất để lưu danh sách bệnh nhân này; biết rằng các bệnh nhân đến đăng ký trước sẽ được vào khám trước.
Queue
Stack
Array
Tree
Ngăn xếp được ứng dụng trong thuật toán “Tính giá trị của một biểu thức hậu tố”. Hãy cho biết giá trị tại đỉnh của ngăn xếp sau khi thực hiện thuật toán “Tính giá trị của một biểu thức hậu tố” với input là: 2 9 4 * + 5 -
30
31
32
33
Cho Stack có các phép toán:
push(X): Thêm phần tử X vào Stack
pop() : Lấy 1 phần tử ra khỏi Stack
Hãy cho biết phần tử ở đỉnh của Stack có giá trị bằng bao nhiêu sau khi thực hiện lần lượt các phép toán sau: push(5); push(3); pop(); push(4); push(6); pop()
3
4
5
6
Cho Queue có các phép toán:
EnQueue(X): Thêm phần tử X vào Queue
DeQueue() : Lấy 1 phần tử ra khỏi Queue
Hãy cho biết phần tử ở đầu của Queue có giá trị bằng bao nhiêu sau khi thực hiện lần lượt các phép toán sau: EnQueue(5); EnQueue(3); DeQueue(); EnQueue(4); EnQueue(6);
A. 3
4
5
6
Cho Queue có các phép toán:
EnQueue(X): Thêm phần tử X vào Queue
DeQueue() : Lấy 1 phần tử ra khỏi Queue
Hãy cho biết phần tử ở đầu của Queue có giá trị là ký tự nào, sau khi thực hiện thuật toán dưới đây với input là: “This**is***Queue*”
Thuật toán
Input: Xâu S
Đọc lần lượt từng ký tự từ trái qua phải của xâu S; Nếu ký tự đọc được là ‘*’ thì lấy 1 phần tử ra khỏi Queue. Ngược lại thì thêm phần tử đọc được vào Queue.
T
h
u
Q
Cho Stack có các phép toán:
push(X): Thêm phần tử X vào Stack
pop() : Lấy 1 phần tử ra khỏi Stack
Hãy cho biết phần tử ở đỉnh của Stack có giá trị là ký tự nào, sau khi thực hiện thuật toán dưới đây với input là: “This**is***Stack*”
Thuật toán
Input: Xâu S
Đọc lần lượt từng ký tự từ trái qua phải của xâu S; Nếu ký tự đọc được là ‘*’ thì lấy 1 phần tử ra khỏi Stack. Ngược lại thì thêm phần tử đọc được vào Stack.
T
S
c
k
Thứ tự nào sau đây cho phép duyệt đệ quy cây nhị phân theo thứ tự trước
Duyệt cây con trái theo thứ tự trước -> thăm gốc -> duyệt cây con phải theo thứ tự trước
Duyệt cây con trái theo thứ tự trước -> duyệt cây con phải theo thứ tự trước -> thăm gốc
Thăm gốc -> duyệt cây con trái theo thứ tự trước -> duyệt cây con phải theo thứ tự trước
Thăm gốc -> duyệt cây con phải theo thứ tự trước -> duyệt cây con trái theo thứ tự trước
Trong phép duyệt một cây nhị phân có 24 nút theo thứ tự sau, nút gốc có thứ tự duyệt thứ mấy ?
Thứ 1
Thứ 2
Thứ 23
Thứ 24
Nút có khóa nhỏ nhất trong cây nhị phân tìm kiếm khác rỗng là:
A. Nút gốc
A. Tất cả các nút
A. Nút con bên phải nhất
A. Nút con bên trái nhất
Thứ tự các nút được duyệt trong phép duyệt thứ tự TRƯỚC của cây này là gì?
A, B, C, D, E, F, G, H, I, J
E, B, A, C, D, G, F, I, H, J
A, D, C, B, F, H, J, I, G, E
B, A, C, D, G, F, I, H, J, E
Thứ tự các nút được duyệt trong phép duyệt sau của cây này là gì?
A, B, C, D, E, F, G, H, I, J
E, B, A, C, D, G, F, I, H, J
A, D, C, B, F, H, J, I, G, E
B, A, C, D, G, F, I, H, J, E
Khi duyệt cây này, biểu thức số học thu được là + ×ab ÷ cd. Đã thực hiện loại duyệt nào?
In-order
Pre-order
Post-order
Breadth-first
Đây có phải là Cây tìm kiếm nhị phân không?
Độ phức tạp là gì?
Yes, O(log(n))
No, O(n)
Yes, O(n)
No, O(log(n))
Trong các cây sau, cây nào là Cây tìm kiếm nhị phân?
Hình nào dưới đây biểu diễn cây tìm kiếm nhị phân của các giá trị sau: { 18, 6, 12, 22, 25, 30, 20, 2 }
Cho cây nhị phân có thứ tự duyệt là:
Duyệt theo thứ tự sau: 1 3 5 4 2
Duyệt theo thứ tự trong: 1 2 3 4 5
Kết quả duyệt theo thứ tự trước là?
Lưu ý: dãy số viết ngăn cách bởi khoảng trắng, ví dụ: 1 2 3 4 5
(a)
Kết quả duyệt theo thứ tự sau của cây?
9 8 4 2 3 5 1
4 9 8 5 2 3 1
8 9 4 2 3 5 1
8 9 4 3 2 5 1
Kết quả duyệt theo thứ tự trước của cây?
1 4 9 5 2 8 3
1 4 9 5 2 3 8
1 4 9 8 5 2 3
1 4 9 8 5 2 3
Duyệt cây tìm kiếm nhị phân theo thứ tự nào sẽ trả về một danh sách có thứ tự tăng dần?
Pre-order
In-order
Post-order
Level-order
Duyệt cây nhị phân theo thứ tự giữa (in-order) là gì?
Duyệt gốc, trái, phải
Duyệt trái, gốc, phải
Duyệt phải, trái, gốc
Duyệt trái, phải, gốc
Để xóa một nút có hai con trong cây tìm kiếm nhị phân, thao tác phổ biến nhất là gì?
Thay thế bằng nút lá trái cùng
Thay thế bằng nút lá phải cùng
Thay thế bằng nút có giá trị nhỏ nhất ở cây con bên phải
Thay thế bằng nút có giá trị lớn nhất ở cây con bên trái
Khi chèn một giá trị vào cây tìm kiếm nhị phân, giá trị này sẽ được chèn vào đâu nếu nó nhỏ hơn giá trị của nút gốc?
Con bên trái của nút gốc
Con bên phải của nút gốc
Trên nút gốc
Không chèn được
Cây tìm kiếm nhị phân (Binary Search Tree) là gì?
Cây mà mỗi nút có giá trị lớn hơn các nút con bên trái và nhỏ hơn các nút con bên phải
Cây mà mỗi nút có giá trị nhỏ hơn các nút con bên trái và lớn hơn các nút con bên phải
Cây mà mỗi nút có giá trị bằng nhau
Cây mà mỗi nút chỉ có một con
Chiều cao của cây (height of the tree) là gì?
Số nút trong cây
Số cạnh từ nút gốc đến nút lá xa nhất
Số nút từ gốc đến nút lá gần nhất
Số nút ở tầng cuối cùng
Cây nhị phân hoàn chỉnh (complete binary tree) là gì?
Cây mà tất cả các nút đều có đúng hai con
Cây mà tất cả các tầng đều đầy đủ trừ tầng cuối cùng
Cây mà tất cả các nút lá đều ở cùng một tầng
Cây mà tất cả các nút chỉ có một con
Có thể tìm kiếm phần tử nhỏ nhất trong cây nhị phân không? Nếu có, làm thế nào?
Có thể tìm kiếm phần tử nhỏ nhất trong cây nhị phân bằng cách đi theo hướng bên trái cho đến khi không còn nút con nào nữa.
Có thể tìm kiếm phần tử nhỏ nhất trong cây nhị phân bằng cách đi theo hướng bên phải
Có thể tìm kiếm phần tử nhỏ nhất trong cây nhị phân bằng cách sử dụng thuật toán tìm kiếm nhị phân
Không thể tìm kiếm phần tử nhỏ nhất trong cây nhị phân
Trong thuật toán chuyển đổi một số nguyên từ hệ thập phân sang hệ nhị phân, người ta sẽ dùng cấu trúc dữ liệu nào dưới đây để lưu số dư của các phép chia.
Queue
Stack
Array
Tree
Ngăn xếp được ứng dụng trong thuật toán “chuyển đổi một biểu thức toán học ở dạng Trung tố sang Hậu tố”. Hãy cho biết biểu thức hậu tố nhận được sau khi chúng ta cho chạy giải thuật “chuyển biểu thức từ trung tố sang hậu tố” với input là: 2 + 3 * 4 - 5
2 3 + * 4 5 -
2 3 4 5 * + -
2 3 4 * 5 + -
2 3 4 * + 5 -
Nhà logic học Balan Lukasiewicz đã đưa ra dạng biểu thức số học theo ký pháp hậu tố (postfix notation). Và ứng dụng ngăn xếp để thực hiện phép toán. Giả sử có biểu thức sau:(1 + 5) * ( 8 - (4 - 1)) Chuyển biểu thức này về dạng hậu tố cách nào sau đây là đúng
1 5 + * 8 4 1 - -
1 5 8 4 1- -+ *
1 5 8 4 1+ - - *
1 5 + 8 4 1 - - *
Định nghĩa danh sách tuyến tính Hàng đợi (Queue) Hàng đợi là kiểu danh sách tuyến tính trong đó, phép bổ sung một phần tử vào hàng đợi được thực hiện ở một đầu, gọi là lối sau (rear) và phép loại bỏ một phần tử được thực hiện ở đầu kia, gọi là lối trước (front).
Hàng đợi là kiểu danh sách tuyến tính trong đó, phép bổ sung một phần tử vào hàng đợiđược thực hiện ở một đầu, gọi là lối sau (rear) và phép loại bỏ một phần tử được thực hiện ở đầu kia, gọi là lối trước (front).
Hàng đợi là kiểu danh sách tuyến tính trong đó, phép bổ sung một phần tử vào hàng đợiđược thực hiện ở một đầu, gọi là lối sau (rear) hay lối trước (front). Phép loại bỏ không thực hiện được.
Hàng đợi là kiểu danh sách tuyến tính trong đó, phép bổ sung một phần tử vào hàng đợi hay loại bỏ được thực hiện ở một đầu danh sách gọi là đỉnh (Top)
Hàng đợi là kiểu danh sách tuyến tính trong đó, phép bổ sung một phần tử vào hàng đợi được thực hiện ở một đầu, gọi là lối sau (rear) và phép loại bỏ một phần tử được thực hiện ở đầu kia, gọi là lối trước (front).
Khi đổi một số nguyên từ hệ thập phân sang hệ nhị phân thì người ta dùng phép chia liên tiếp cho 2 và lấy các số dư (là các chữ số nhị phân) theo chiều ngược lại. Cơ chế sắp xếp này chính là cơ chế hoạt động của cấu trúc dữ liệu.
Mảng (array)
Bản ghi( Record)
Hàng đợi(Queue)
Ngăn xếp (stack)
Cho Stack gồm 5 phần tử {12, 15, 18, 25, 30}, trong đó 30 là phần tử ở đỉnh Stack. Để thay số 18 bằng số 23 vào trong Stack ta phải làm thế nào?
Pop(12), Pop(15), Pop(18)
Pop(30), Pop(25), Pop(18), Push(23), Push(25), Push(30)
Pop(30), Pop(25), Pop(18), Push(23), Push(15), Push(12)
Pop(12), Pop(15), Pop(18), Push(23), Push(15), Push(12)
Cho Stack gồm 5 phần tử {2, 10, 12, 15, 20}, trong đó 20 là phần tử ở đỉnh Stack. Để lấy ra phần tử thứ 3 trong Stack ta phải làm thế nào?
Pop(2), Pop(10), Pop(12)
Pop(20), Pop(15), Pop(12)
Pop(2), Pop(10), Pop(12), Push(10), Push(2)
Pop(20), Pop(15), Pop(12), Push(10), Push(2)
Tính giá trị các biểu thức hậu tố sau 2 3 5 + * 1 2 + 4 *+
42
52
28
-28
Không có lỗi
Stack không được khởi tạo đúng cách
Phương thức Peek() không trả về giá trị
Phương thức Pop() cần có tham số
Giả sử có một Stack S chứa lần lượt 3 phần tử [1,2,3] với phần tử có giá trị là 1 ở đáy của Stack S . Sau khi thực hiện lần lượt các lệnh sau : S.Pop() ; S.Pop() ; và S.Push (4) ; Stack S sẽ chứa các phần tử là :
1,2,4
1,4
4,2,1
4
Giả sử có một Stack rỗng s. Thực hiện các lệnh sau s.Push(1), s.Push(2) và s.Pop(). Giá trị phần tử Top của Stack s là:
1
2
Không có giá trị
Không xác định được
1
2
3
4
Giả sử có Queue Q ban đầu rỗng. Hãy cho biết giá trị các phần tử trong q sau khi thực hiện đoạn mã sau for (int i = 0; i <= 16; i++) {if (i % 3 == 0) Q.Enqueue(i); else if (i % 4 == 0) Q.Dequeue();}
0,3,6,9,12,15
9,12,15
0,4,8,16
0,3,4,6,8,9,12,15,16
Giả sử có Queue q chứa 3 phần tử [1,2,3] với phần từ có giá trị là 1 ở đầu hàng đợi. Sau khi thực hiện q.Dequeue() ; q.Dequeue() ; và q.Enqueue(4) ; Các phần tử còn lại trong Queue q là ?
1,2,4
1,4
4,2,1
3,4
Nếu các phần tử 'T', 'H', 'E', 'V' và 'A' được thêm lần lượt theo thứ tự vào trong một hàng đợi q và các phần tử này bị xóa lần lượt thì thứ tự khi xóa sẽ như thế nào?
T H E V A
H E V A T
A V E H T
T A H V E
Biểu thức hậu tố nào là đúng từ biểu thức trung tố sau : 3 + 4 * 5
3 4 5 + *
3 4 5 * +
3 4 + 5*
3 4 * 5 +
Giá trị của biểu thức hậu tố: 6 3 2 4 + - * bằng bao nhiêu?
1
40
74
-18
Duyệt theo thứ tự sau cho kết quả là:
1a+b*c+d*e+f*g
1abc*+de*f+g*+
++a*bc*+*defg
abc+*+defg*+*
Số lượng nút TỐI ĐA trong cây tìm kiếm nhị phân có chiều cao = 5 là bao nhiêu?
26-1
25-1
25
26
6
Số lượng nút TỐI THIỂU trong cây tìm kiếm nhị phân có chiều cao = 5 là bao nhiêu?
6
5
26-1
25-1
25
Khi nào cây AVL cần thực hiện xoay?
Khi cây bị mất cân bằng
Khi chèn phần tử vào
Khi xóa phần tử
Tất cả các đáp án trên
Thời gian trung bình để xóa một phần tử khỏi cây AVL là bao nhiêu?
O(n)
O(log n)
O(n^2)
O(1)
Phép xoay nào thực hiện trong cây AVL để cân bằng cây sau khi chèn một phần tử vào cây con phải của cây con trái?
a) Xoay phải
b) Xoay trái
c) Xoay trái kép
d) Xoay phải kép
Phép xoay nào thực hiện trong cây AVL để cân bằng cây sau khi chèn một phần tử vào cây con phải của cây con phải?
a) Xoay phải
b) Xoay trái
c) Xoay trái kép
d) Xoay phải kép
Trong cây AVL, khi chèn một phần tử có thể gây ra bao nhiêu lần xoay tối đa?
1
2
3
4
Phép xoay nào thực hiện trong cây AVL để cân bằng cây sau khi chèn một phần tử vào cây con trái của cây con phải?
a) Xoay phải
b) Xoay trái
c) Xoay trái kép
d) Xoay phải kép
Phép xoay nào thực hiện trong cây AVL để cân bằng cây sau khi chèn một phần tử vào cây con trái của cây con trái?
Xoay phải
Xoay trái
Xoay trái kép
Xoay phải kép
Trong cây AVL, chiều cao của một cây con bên trái là 3 và chiều cao của cây con bên phải là 1. Đây là tình huống gì?
a) Cân bằng
b) Mất cân bằng cần xoay phải
c) Mất cân bằng cần xoay trái
d) Không cần xoay
Cây AVL có thể được sử dụng trong ứng dụng nào sau đây?
a) Hệ thống cơ sở dữ liệu
b) Hệ thống tập tin
c) Trình biên dịch
d) Tất cả các ứng dụng trên
Thao tác xoay trái được sử dụng khi nào trong cây AVL?
Khi cây con phải cao hơn cây con trái
Khi cây con trái cao hơn cây con phải
Khi thêm một nút mới vào cây con phải của cây con phải
Khi thêm một nút mới vào cây con trái của cây con trái
Hệ số cân bằng của nút có giá trị 15 là bao nhiêu?
(a)
Hệ số cân bằng của nút có giá trị 345 là bao nhiêu?
(a)
Cây sau đây có phải là cây AVL không?
phải
không
Hệ số cân bằng của nút gốc là gì?
(a)
Cây này bị mất cân bằng. Chúng ta cần thực hiện bao nhiêu vòng quay để cây trở nên cân bằng?
(a)
u := N;
For i:=1 to N do if T[i] >= 0 then u:=u-1;
Đoạn lệnh trên tính thông tin nào?
Đếm số dương của mảng T
Đếm số âm có trong mảng T
Tổng số lẻ trong mảng T
Tổng số dương trong mảng T
Cho câu lệnh:
FOR i:=1 TO 100 DO A[i]:= Random(50)-Random(50);
Hãy cho biết giá trị của mảng A trong câu lệnh trên nhận giá trị nguyên trong đoạn nào?
Từ -49 đến 49
Từ -49 đến 50
Từ -50 đến 50
Từ -50 đến 49
2
3
6
Chương trình lỗi
Trong lập trình C#, cho biết kết quả của đoạn chương trình sau?
float[,] a = new float[2, 3] { { 1, 2, 3}, { 4, 5, 6} };
Console.Write(a[1,2]);
2
3
5
6
Trong danh sách liên kết đơn, thao tác thêm một phần tử vào đầu danh sách có độ phức tạp thời gian là bao nhiêu?
O(1)
O(n)
O(log n)
O(n^2)
Khi so sánh việc cài đặt dữ liệu bằng mảng (Array) và danh sách liên kết (Linked List), điểm mạnh chính của mảng là gì?
Thêm và xóa phần tử dễ dàng hơn.
Truy xuất phần tử ngẫu nhiên với thời gian truy xuất cố định.
Tiết kiệm không gian lưu trữ.
Có khả năng mở rộng kích thước dữ liệu một cách linh hoạt.
Giá trị của node đầu tiên trong danh sách liên kết.
Giá trị của node cuối cùng trong danh sách liên kết.
Số lần lặp được thực hiện trong vòng lặp.
Trả về "true" nếu danh sách liên kết chứa giá trị value, ngược lại trả về "false".
Chèn một node mới vào đầu danh sách liên kết.
Chèn một node mới vào cuối danh sách liên kết.
Xóa node đầu tiên của danh sách liên kết.
Tạo ra một danh sách liên kết mới.
Chèn một node mới vào danh sách liên kết.
Xóa node đầu tiên của danh sách liên kết.
Xóa node có giá trị bằng 'value' khỏi danh sách liên kết.
Tạo ra một danh sách liên kết mới.
Độ dài của danh sách liên kết.
Giá trị của node đầu tiên trong danh sách liên kết.
Số lần lặp được thực hiện trong vòng lặp.
Giá trị của node cuối cùng trong danh sách liên kết.
2
3
4
5
định nghĩa cấu trúc dữ liệu
cách thức tổ chức dữ liệu trong bộ nhớ để truy cập và cập nhật thuận tiện
dãy hữu hạn các bước tính toán để thu được đầu ra ứng với đầu vào
trang bị kiến thức để thiết kế và cài đặt các cấu trúc dữ liệu và thuật toán hiệu quả để giải quyết các bài toán tính toán
hệ quản trị dữ liệu,tính toán tối ưu hóa,trí tuệ nhân tạo, hệ điều hành,...
định nghĩa thuật toán
cách thức tổ chức dữ liệu trong bộ nhớ để truy cập và cập nhật thuận tiện
dãy hữu hạn các bước tính toán để thu được đầu ra ứng với đầu vào
trang bị kiến thức để thiết kế và cài đặt các cấu trúc dữ liệu và thuật toán hiệu quả để giải quyết các bài toán tính toán
hệ quản trị dữ liệu,tính toán tối ưu hóa,trí tuệ nhân tạo, hệ điều hành,...
mục tiêu môn học cấu trúc dữ liêu và giải thuật
cách thức tổ chức dữ liệu trong bộ nhớ để truy cập và cập nhật thuận tiện
dãy hữu hạn các bước tính toán để thu được đầu ra ứng với đầu vào
trang bị kiến thức để thiết kế và cài đặt các cấu trúc dữ liệu và thuật toán hiệu quả để giải quyết các bài toán tính toán
hệ quản trị dữ liệu,tính toán tối ưu hóa,trí tuệ nhân tạo, hệ điều hành,...
ứng dụng của cấu trúc dữ liệu và thuật toán
cách thức tổ chức dữ liệu trong bộ nhớ để truy cập và cập nhật thuận tiện
dãy hữu hạn các bước tính toán để thu được đầu ra ứng với đầu vào
trang bị kiến thức để thiết kế và cài đặt các cấu trúc dữ liệu và thuật toán hiệu quả để giải quyết các bài toán tính toán
hệ quản trị dữ liệu,tính toán tối ưu hóa,trí tuệ nhân tạo, hệ điều hành,...
định nghĩa nào đúng về cấu trúc dữ liệu :
cách thức tổ chức dữ liệu trong bộ nhớ để truy cập và cập nhật thuận tiện hơn
cách thức tổ chức dữ liệu trong máy tính để truy cập và cập nhật thuận tiện hơn
cách thức sử dụng dữ liệu trong bộ nhớ để truy cập và cập nhật thuận tiện hơn
cách thức sử dụng dữ liệu trong máy để truy cập và cập nhật thuận tiện hơn
định nghĩa về thuật toán nào sau đây đúng
dãy hữu hạn các bước tính toán để thu được đầu ra ứng với đầu vào
dãy vô hạn các bước tính toán để thu được đầu ra ứng với đầu vào
dãy hữu hạn các bước lập trình để thu được đầu ra ứng với đầu vào
dãy hữu hạn các bước tính toán để thu được đầu vào ứng với đầu ra
nêu một vài ứng dụng của cấu trúc dữ liệu và thuật toán
hệ quản trị cơ sở dữ liệu
tính toán tối ưu hóa
trí tuệ nhân tạo, thị giác máy tính
hệ điều hành
hệ quản trị thông
mã giả là gì
mô tả thuật toán đơn giản , gần gũi ,ngắn gọn và không phụ thuộc vào cú pháp ngôn ngữ lập trình cụ thể
mô tả thuật toán phức tạp, khó hiểu nhưng ngắn gọn và không phụ thuộc vào cú pháp của ngôn ngữ lập trình cụ thể
mô tả thuật toán đơn giản ,gần gũi,ngắn gọn nhưng phụ thuộc vào cú pháp của ngôn ngữ lập trình cụ thể
mô tả thuật toán đơn giản ,gần gũi nhưng dài dòng dù không phụ thuộc vào cú pháp ngôn ngữ lập trình cụ thể
một bài có thể có nhiều thuật toán giải quyết là đúng hay sai
đúng
sai
phân tích độ phức tạp thuật toán , ta xét những yếu tố nào sau đây
thời gian
bộ nhớ sử dụng
độ dài của nguồn lệnh
khoảng thời gian cần để viết chương trình
