Tải bản đầy đủ (.docx) (61 trang)

Cấu trúc dữ liệu và giải thuật it05

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (240.91 KB, 61 trang )

Một chương trình cài đặt trên máy tính được xác định bởi thành phần nào
Chọn một câu trả lời:
a. Cấu trúc dữ liệu
b. Thuật tốn
c. Khơng phải là các thành phần
d. Cả hai thành phần

Phản hồi
Đáp án đúng là: C. Cả hai thành phần
Tham khảo: Tham khảo Tài liệu hướng dẫn học Bài 1 – Đánh giá thuật toán, mục I, bản Text
Đây là định nghĩa của độ phức nào? “Được tính là tổng số chi phí về mặt khơng gian (bộ nhớ) cần
thiết sử dụng cho thuật toán”
Chọn một câu trả lời:
a. Thời gian
b. Cả hai lựa chọn đều sai
c. Không gian
d. Cả hai lựa chọn đều đúng

Phản hồi
Đáp án đúng là: A. Không gian
Tham khảo: Tham khảo Tài liệu hướng dẫn học Bài 1 – Đánh giá thuật tốn, mục IV, bản Text
Trong giải thuật đệ quy thì lời giải trực tiếp mà không phải nhờ đến một bài tốn con nào đó là thành
phần nào?
Chọn một câu trả lời:
a. Cả hai lựa chọn đều sai
b. Phần tử neo
c. Công thức tổng quát
d. Cả hai lựa chọn đều đúng


Phản hồi


Đáp án đúng là: A. Phần tử neo
Tham khảo: Tham khảo Tài liệu hướng dẫn học Bài 1 – Đánh giá thuật toán, mục V, bản Text
Cho biết kết xuất của đoạn chương trình sau:
long F(int n)
{
if ((2*n+1) ==1)
return 1;
else
return (2*n+1)+F(n-1);
}
void main()
{
long x=F(3);
printf("%ld", x);
}
Chọn một câu trả lời:
a. 16.00
b. 6
c. 9
d. 16

Phản hồi
Đáp án đúng là: D. 16
Tham khảo: Tham khảo Tài liệu hướng dẫn học Bài 1 – Đánh giá thuật toán, mục V, bản Text
F(3) = 2*3+1 + f(2) = 16
F(2) = 2*2 + 1 + F(1) = 9
F(1) = 2*1 + 1 + f(0) = 4
F(0) = 1
Cho biết kết quả của đoạn chương trình sau:
long f3(int n)

{
if (n==1)
return 1;
else


return n*n + f3(n-1);
}
int main()
{
long x = f3(3);
printf("%ld", x);
getch();
}
Chọn một câu trả lời:
a. 14
b. 13
c. 16
d. 12

Phản hồi
Đáp án đúng là: B. 14
Tham khảo: Tham khảo Tài liệu hướng dẫn học Bài 1 – Đánh giá thuật toán, mục V, bản Text
F(3) = 3*3 + F3(2)
F3(2) = 2*2 + F3(1)
F3(1) = 1
Đoạn mã sau đây làm nhiệm vụ gì?
void SXDSSV( int n, SV ds[]){ int min, i, j; SV tg; for( i=0 ; i+ ) if ( ds[j].Tuoi < ds[min].Tuoi ) min = j; if( min != i )
{ tg = ds[min];

ds[min] = ds[i];
ds[i] = tg; } }}
Chọn một câu trả lời:
a. Thực hiện sắp xếp danh sách SV theo Tuoi giảm dần bằng thuật toán Selection
b. Thực hiện sắp xếp danh sách SV theo Tuoi tăng dần bằng thuật toán Insertion
c. Thực hiện sắp xếp danh sách SV theo Tuoi tăng dần bằng thuật toán Selection
d. Thực hiện sắp xếp danh sách SV theo Tuoi giảm dần bằng thuật toán Insertion


Phản hồi
Đáp án đúng là: Thực hiện sắp xếp danh sách SV theo Tuoi tăng dần bằng thuật toán Selection
Giả sử cần sắp xếp mảng M có N phần tử sau theo phưuơng pháp sắp xếp chèn trực tiếp:
11 16 12 75 51 54 5 73 36 52 98
Cần thực hiện bao nhiêu lần chèn các phần tử vào dãy con đã có thứ tự tăng dần đứng đầu dãy M
để sắp xếp mảng tăng dần:
Chọn một câu trả lời:
a. 8 lần
b. 9 lần
c. 10 lần
d. 7 lần

Phản hồi
Đáp án đúng là: D. 10 lần
Tham khảo: Bài 2 – Tìm kiếm và sắp xếp – Mục II.1, Bản Hướng dẫn tự học.
Đoạn mã cài đặt hàm tìm kiếm nhị phân phần tử x trên dãy sắp xếp tăng dần:
int BinarySearch( int a[ ], int n, int x )
{
int left = ……….., right = ……………;
int middle;
do

{
middle = (left+right)/2;
if (x == a[middle]) break;
else if (xelse left = middle + 1;
} while ( left <= right );
if ( left <= right ) return middle;
else return -1;//ko tìm thấy phần tử x
}
Giá trị được điền vào dấu ………... để đoạn mã cài đặt thực hiện đúng:
Chọn một câu trả lời:
a. 0 và n-1
b. n-1 và 0


c. n và 1
d. 1 và n

Phản hồi
Đáp án đúng là: B. 0 và n-1
Tham khảo: Bài 2 – Tìm kiếm và sắp xếp – Mục I.2, Bản Hướng dẫn tự học.
Hàm mô tả sắp xếp nổi bọt (Bubble Sort) trên mảng M có N phần tử:
1. void BubbleSort(int M[ ], int N)
2. {
3.int i,j,tg;
4.for( i = 0 ; i < N-1 ; i++ )
5.........................................
6.if ( M[j] < M[j-1] )
7.{
8.tg = M[j];

9.M[ j] = M[j-1];
10.M[ j-1] = tg;
11.}
12.}
Lệnh nào sau đây sẽ được đưa vào dòng số [5] của đoạn mã trên
Chọn một câu trả lời:
a. for( j = N-1; j>i; j--)
b. Khơng có dịng lệnh nào phù hợp, khơng cần thêm thuật toán vẫn chạy đúng
c. for( j = N-1; j>i; j++)
d. for( j = N; j< i; j--)

Phản hồi
Đáp án đúng là: A. for( j = N-1; j>i; j--)
Tham khảo: Bài 3 – Các thuật toán sắp xếp phần 2, Mục II, Bản Hướng dẫn tự học
** Cho dãy sau: 42, 23, 74, 11, 65, 58. Dùng phương pháp sắp xếp chọn trực tiếp (Selection Sort)
để sắp xếp giảm dần, sau lần lặp thứ tư kết quả của dãy là thế nào?
Chọn một câu trả lời:
a. 74, 65, 58, 11, 23, 42


b. 74, 65, 58, 42, 23, 11
c. 74, 65, 42, 11, 23, 58
d. 74, 23, 42, 11, 65, 58

Phản hồi
Đáp án đúng là: A. 74, 65, 58, 42, 23, 11
Tham khảo: Bài 3 – Các thuật toán sắp xếp phần 2, Mục I, Bản Hướng dẫn tự học
Cho đoạn chương trình:
void QuickSort( int a[ ], int L , int R )
{

int i,j,x;
x= a[(L+R)/2];
i =…;
j = ...;
do
{
while ( a[i] < x ) i++;
while ( a[j] > x ) j--;
if ( i <= j )
{
Hoanvi (a[i], a[j]);
i++; j--;
}
} while(iif (Lif (i}
Điền giá trị nào vào đoạn …. cho đúng
Chọn một câu trả lời:
a. i=L; j=R;
b. i=0; j=R;
c. i=0; j=n-1;


d. i=L; j=n-1;

Phản hồi
Đáp án đúng là: A
i=L; j=R;
Tham khảo: Bài 3 – Các thuật toán sắp xếp phần 2, Mục III, Bản Hướng dẫn tự học

Cho đoạn chương trình:
void QuickSort( int a[ ], int L , int R )
{
int i,j,x;
x=……..;
i = L; j = R;
do
{
while ( a[i] < x ) i++;
while ( a[j] > x ) j--;
if ( i <= j )
{
Hoanvi (a[i], a[j]);
i++; j--;
}
} while(iif (Lif (i}
Điền giá trị nào vào đoạn …. cho đúng
Chọn một câu trả lời:
a. a[(L+R)]
b. a[(L-R)/2]
c. a[R/2]
d. a[(L+R)/2]

Phản hồi
Đáp án đúng là: B. a[(L+R)/2]
Tham khảo: Bài 3 – Các thuật toán sắp xếp phần 2, Mục III, Bản Hướng dẫn tự học



Cho mảng a gồm các phẩn tử có giá trị như sau:
3126
Số lần hoán vị 2 phần tử khác nhau khi áp dụng thuật toán nổi bọt để sắp xếp mảng giảm dần là:
Chọn một câu trả lời:
a. 4
b. 5
c. 3
d. 2

Phản hồi
Đáp án đúng là: C. 4
Tham khảo: Bài 3 – Các thuật toán sắp xếp phần 2, Mục II, Bản Hướng dẫn tự học
Cho dãy sau: 23, 78, 45, 8, 32, 56. Dùng phương pháp sắp xếp chọn trực tiếp (Selection Sort) để
sắp xếp tăng dần, sau 3 lần lặp thì kết quả của dãy là thế nào?
Chọn một câu trả lời:
a. 8, 23, 78, 45, 32, 56
b. 8, 23, 32, 78, 56, 45
c. 8, 23, 32, 78, 45, 56
d. 23, 78, 45, 8, 32, 56

Phản hồi
Đáp án đúng là: A. 8, 23, 32, 78, 45, 56
Tham khảo: Bài 3 – Các thuật toán sắp xếp phần 2, Mục I, Bản Hướng dẫn tự học
Thủ tục mô tả thuật toán sắp xếp chọn trực tiếp:
void SapXepChonTrucTiep( T M[], int N)
{
int K = 0, posmin;
int Temp;
................................................

{
T Min = M[K];
Posmin = K;


for( int pos = K+1; posif( Min > M[pos])
{
Min = M[pos];
Posmin = pos;
}
Temp = M[k];
M[k] = m[posmin];
M[posmin] = Temp;
}
return;
}
Đoạn mã cần thiết để đặt vào dịng .....................để chương trình sắp xếp đúng
Chọn một câu trả lời:
a. for ( k =n-1; k>0; k--)
b. for ( k =n; k>0; k--)
c. for ( k =0; kd. for ( k =0; k
Phản hồi
Đáp án đúng là: B
Cho dãy 10, 5, 7, 3, 9, 2, 15, 1. Cho biết kết quả sau lần duyệt thứ nhất của thuật toán sắp xếp tăng
dần bằng QuickSort
Chọn một câu trả lời:
a. 1, 2, 5, 7, 9, 3, 15, 10

b. 1, 2, 3, 5, 9, 7, 15, 10
c. 1, 2, 3,7,9, 5, 15, 10
d. 1, 2, 3, 5, 7, 9, 15, 10

Phản hồi
Đáp án đúng là: A. 1, 2, 3,7,9, 5, 15, 10
Tham khảo: Bài 3 – Các thuật toán sắp xếp phần 2, Mục III, Bản Hướng dẫn tự học


Cho dãy sau: 42, 23, 74, 11, 65, 58. Dùng phương pháp sắp xếp nổi bọt (Bubble Sort) để sắp xếp
tăng dần, sau 4 lần lặp kết quả của dãy là thế nào?
Chọn một câu trả lời:
a. 11, 23, 42, 58, 65, 74
b. 11, 23, 58, 42, 65, 74
c. 42, 23, 74, 11, 65, 58
d. 11, 23, 58, 42, 74, 65

Phản hồi
Đáp án đúng là: D. 11, 23, 42, 58, 65, 74
Tham khảo: Bài 3 – Các thuật toán sắp xếp phần 2, Mục II, Bản Hướng dẫn tự học
Cho thuật toán sắp xếp Bubble Sort như sau:
void BubbleSort( int M[], int N)
{
for( int i = 0; i< N-1; i++)
for( int j = N-1; j>I; j--)
if( M[j] return ;
}
Chọn câu đúng nhất cho hàm Swap:
Chọn một câu trả lời:

a. void Swap( int &X, int &Y)
{
int Temp = X;
X=Y;
Y = Temp;
return ;
}
b. void Swap( int X, int Y)
{
int Temp = X;
X=Y;
Y = Temp;
return ;
}
c. void Swap( floatX, float Y)
{


int Temp = X;
X=Y;
Y = Temp;
return ;
}
d. void Swap( int *X, int *Y)
{
int Temp = X;
X=Y;
Y = Temp;
return ;
}


Phản hồi
Đáp án đúng là: D
void Swap( int &X, int &Y)
{
int Temp = X;
X=Y;
Y = Temp;
return ;
}
Tham khảo: Bài 3 – Các thuật toán sắp xếp phần 2, Mục II, Bản Hướng dẫn tự học
Cho dãy sau: 23, 78, 45, 8, 32, 56. Dùng phương pháp sắp xếp chọn trực tiếp (Selection Sort) để
sắp xếp tăng dần, sau 2 lần lặp thì kết quả của dãy là thế nào?
Chọn một câu trả lời:
a. 8, 23, 78, 45, 32, 56
b. 8, 23, 32, 78, 56, 45
c. 8, 23, 45, 78, 32, 56
d. 23, 78, 45, 8, 32, 56

Phản hồi
Đáp án đúng là: C. 8, 23, 45, 78, 32, 56
Tham khảo: Bài 3 – Các thuật toán sắp xếp phần 2, Mục I, Bản Hướng dẫn tự học
Cho các bước mơ tả thuật tốn như sau:
Nếu danh sách rỗng:
DQ.Head = new_element;


DQ.Tail = DQ.Head;
Ngược lại (d/s khác rỗng):
new_element -> next = DQ.Head;

DQ.Head -> pre = new_element;
DQ.Head = new_element;
Đây là mô tả của thuật toán chèn một phần tử vào danh sách liên kết đơi với vị trí chèn là?
Chọn một câu trả lời:
a. Chèn vào cuối danh sách

b. Chèn trước phần tử đã biết

c. Chèn vào đầu danh sách

d. Chèn sau phần tử đã biết

Phản hồi
Đáp án đúng là: B. Chèn vào đầu danh sách
Tham khảo: Bài 5 – Danh sách liên kết đôi, Hướng dẫn tự học
Tổ chức của danh sách liên kết kép gồm có mấy thành phần:
Chọn một câu trả lời:
a. 4 thành phần

b. 5 thành phần

c. 3 thành phần

d. 2 thành phần

Phản hồi


Đáp án đúng là: B. 3 thành phần
Tham khảo: Bài 5 – Danh sách liên kết đôi, Hướng dẫn tự học

Thao tác thêm một phần tử vào cây khi so sánh giá trị của phần tử cần thêm vào so với nút đang xét
nếu phần tử cần thêm vào lớn hơn thì được thêm vào vị trí nào?
Chọn một câu trả lời:
a. Cả hai phát biểu trên đều đúng

b. Cả hai phát biểu trên đều sai

c. Phần tử mới được bổ sung vào nhánh phải của nút đang xét

d. Phần tử mới được bổ sung vào nhánh trái của nút đang xét

Phản hồi
Đáp án đúng là: Phần tử mới được bổ sung vào nhánh trái của nút đang xét
Tham khảo: Tham khảo Tài liệu hướng dẫn học Bài 7 – Cây, mục VI, bản Text
Tham khảo: Tham khảo Tài liệu hướng dẫn học Bài 7 – Cây, mục VI, bản Text
Cho biết các nút có bậc bằng 2 trong hình ảnh sau:

Chọn một câu trả lời:


a. 45, 47, 50, 55

b. 30, 35, 50, 40

c. 28, 30, 32, 35, 38

d. 28, 32, 38, 47, 55

Phản hồi
Đáp án đúng là: 30, 35, 50, 40

Cho cây NPTK, Cho biết kết quả duyệt cây theo thứ tự LRN là:

Chọn một câu trả lời:
a. 46, 36, 33, 31, 30, 16, 14, 11, 8, 6

b. 6, 8, 11, 14, 16, 30, 31, 33, 36, 46

c. 8, 6, 14, 16, 11, 33, 31, 46, 36, 30

d. 30, 11, 6, 8, 16, 14, 36, 31, 33, 46

Phản hồi
Đáp án đúng là: D. 8, 6, 14, 16, 11, 33, 31, 46, 36, 30
Tham khảo: Tham khảo Tài liệu hướng dẫn học Bài 7 – Cây, mục VI, bản Text


Cho các phần tử sau: 31, 19, 36, 20, 41, 17, 33, 32. Tạo cây NPTK từ các phần tử trên. Hãy cho
biết sau khi xóa phần tử 33 trên cây sau đó áp dụng phương pháp duyệt NRL thì kết quả thu được
thứ tự các phần tử là như thế nào?
Chọn một câu trả lời:
a. 41, 36, 32, 31, 20, 19, 17

b. 31, 36, 41, 32, 19, 20, 17

c. 41, 32, 36, 20, 17, 19, 31

d. 31, 19, 36, 20, 41, 17, 32

Phản hồi
Đáp án đúng là: D. 31, 36, 41, 32, 19, 20, 17

Tham khảo: Tham khảo Tài liệu hướng dẫn học Bài 7 – Cây, mục VI, bản Text
Cho cây NPTK, chọn biểu thức tương ứng với cây:

Chọn một câu trả lời:
a. (3+4*8-2*6)

b. (3+4)*((8-2)*6)

c. (3+4)*(8-(2*6))

Phản hồi
Đáp án đúng là: D. (3+4)*((8-2)*6)


Tham khảo: Tham khảo Tài liệu hướng dẫn học Bài 7 – Cây, mục VII, bản Text
Cho các phần tử sau: 31, 19, 36, 20, 41, 17, 33, 32. Tạo cây NPTK từ các phần tử trên. Hãy cho
biết sau khi xóa phần tử 33 trên cây sau đó áp dụng phương pháp duyệt RNL thì kết quả thu được
thứ tự các phần tử là như thế nào?
Chọn một câu trả lời:
a. 41, 32, 36, 20, 17, 19, 31

b. 31, 36, 41, 32, 19, 20, 17

c. 31, 19, 36, 20, 41, 17, 32

d. 41, 36, 32, 31, 20, 19, 17

Phản hồi
Đáp án đúng là: C. 41, 36, 32, 31, 20, 19, 17
Tham khảo: Tham khảo Tài liệu hướng dẫn học Bài 7 – Cây, mục VI, bản Text

Cho dãy số sau: 30, 18, 35, 17, 40, 16, 32, 31, 43, 19. Cho biết kết quả khi duyệt cây được tạo lần
lượt từ các phần tử trên bằng phương pháp duyệt LRN (Left Right Node ):
Chọn một câu trả lời:
a. 16, 17, 19, 18, 31, 32, 43, 40, 35, 30

b. 30, 18, 17, 16, 19, 35, 32, 31, 40, 43

c. 30, 35, 40, 43, 32, 31, 18, 19, 17, 16

d. 30, 18, 35, 17, 40, 16, 32, 31, 43, 19

Phản hồi
Đáp án đúng là: C. 16, 17, 19, 18, 31, 32, 43, 40, 35, 30
Tham khảo: Tham khảo Tài liệu hướng dẫn học Bài 7 – Cây, mục VI, bản Text


Cho biết kết quả khi duyệt cây sau bằng phương pháp duyệt LRN (Left-Right-Node)?

Chọn một câu trả lời:
a. 28, 32, 30, 38, 35, 47, 45, 55, 50, 40

b. 40, 35, 30, 28, 32, 38, 50, 45, 47, 55

c. 55, 50, 45, 47, 40, 38, 35, 32, 30, 28

d. 28, 30, 32, 35, 38, 40, 45, 47, 50, 55

Phản hồi
Đáp án đúng là: 28, 32, 30, 38, 35, 47, 45, 55, 50, 40
Cho khai báo cấu trúc cây NPTK:

struct Node
{
int key;
Node *Left, *Right;
};
typedef Node *Tree;


và CTC insertNode(Tree &T, item x) để chèn thêm phần tử mới vào cây nhị phân tìm kiếm, nếu chèn
thành công trả lại giá trị 0 nếu không chèn thành công trả lại giá trị -1
Đoạn mã nào sau đây để cho phép nhập liên tiếp các số nguyên đến khi bằng 0 thì dừng và tạo cây
nhị phân tìm kiếm từ các số nguyên đã nhập đó.
Chọn một câu trả lời:
a. int insertNode(Tree &T, int x){ if (T != NULL) { if (T->key == x) return -1; if (T->key > x)
return insertNode(T->Left, x); else if (T->key < x)
return insertNode(T->Right, x); } T = (Node *) malloc(sizeof(Node)); if (T == NULL) return 0; T->key =
x; T->Left = T->Right = NULL; return 1;}
b. void CreateTree(Tree &T)
{
int x;
while (1)
{
printf("Nhap vao Node: ");
scanf("%d", &x);
if (x == 0) break;
int check = insertNode(T, x);
if (check == -1)
printf("Node da ton tai!");
else if (check == 0)
printf("Khong du bo nho");

}
}
c. Node* searchKey(Tree T, int x) { if (T!=NULL) { if (T->key == x)
{ Node *P = T; return P;} if (T->key > x)
return searchKey(T->Left, x); if (T->key < x)
return searchKey(T->Right, x); } return NULL;}
d. void LNR(Tree T){ if(T!=NULL) { LNR(T->Left); printf("%7d",T->key); LNR(T->Right); }}

Phản hồi
Đáp án đúng là: void CreateTree(Tree &T)
{
int x;
while (1)


{
printf("Nhap vao Node: ");
scanf("%d", &x);
if (x == 0) break;
int check = insertNode(T, x);
if (check == -1)
printf("Node da ton tai!");
else if (check == 0)
printf("Khong du bo nho");
}
}
Các dạng biểu diễn của biểu thức toán học gồm
Chọn một câu trả lời:
a. Trung tố và hậu tố


b. Tiền tố và trung tố

c. Tiền tố và hậu tố

d. Tiền tố, trung tố và hậu tố

Phản hồi
Đáp án đúng là: D. Tiền tố, trung tố và hậu tố
Tham khảo: Tham khảo Tài liệu hướng dẫn học Bài 7 – Cây, mục VII, bản Text
Cho biết kết quả khi duyệt cây sau bằng phương pháp duyệt NLR (Node-Left-Right)?


Chọn một câu trả lời:
a. 40, 35, 30, 28, 32, 38, 50, 45, 47, 55

b. 28, 30, 32, 35, 38, 40, 45, 47, 50, 55

c. 55, 50, 45, 47, 40, 38, 35, 32, 30, 28

d. 28, 32, 30, 38, 35, 47, 45, 55, 50, 40

Phản hồi
Đáp án đúng là: 40, 35, 30, 28, 32, 38, 50, 45, 47, 55
Bậc của nút trong cây có nghĩa là gì?
Chọn một câu trả lời:
a. Là số nhánh con trái của nút đó

b. Là số nhánh con phải của nút đó

c. Là số nhánh con của nút đó



d. Là số nhánh con nhỏ nhất của nút con của nút đó

Phản hồi
Đáp án đúng là: C. Là số nhánh con của nút đó
Tham khảo: Tham khảo Tài liệu hướng dẫn học Bài 7 – Cây, mục I, bản Text
Lựa chọn câu đúng nhất về danh sách liên kết đôi.
Chọn một câu trả lời:
a. Vùng liên kết của một phần tử trong danh sách liên đơi có 01 mối liên kết với 02 phần tử khác
trong danh sách
b. Vùng liên kết của một phần tử trong danh sách liên đơi có 02 mối liên kết với phần tử đầu và cuối
danh sách
c. Vùng liên kết của một phần tử trong danh sách liên kết đơi có 02 mối liên kết với phần tử trước và
sau nó trong danh sách
d. Vùng liên kết của một phần tử trong danh sách đơi có 02 mối liên kết với 01 phần tử trong danh
sách

Phản hồi
Đáp án đúng là: C. Vùng liên kết của một phần tử trong danh sách liên kết đôi có 02 mối liên kết với
phần tử trước và sau nó trong danh sách
Tham khảo: Bài 5 – Danh sách liên kết đôi, Hướng dẫn tự học
Cho khai báo Stack như sau:
struct Stack
{
int top
int nut[max];
};
Cho biết phần tử được lấy ra cuối cùng trong Stack sau là bảo nhiêu?



int a[] = {4, 5, 6, 7, 8};
int n = 5;
Stack s;
for(int i = 0; ipush(s, a[i]);
Chọn một câu trả lời:
a. 7

b. 4

c. 8

d. 5

Phản hồi
Đáp án đúng là: 4
Kết quả của đoạn mã sau là gì?
void main()
{
char st[20]= “ABC”;
int i;
stack *s;
InitStack(s);
for (int i=0; iPush( s, st[i]);
printf(“\n Ket qua:”);
while (!isEmpty(s))
printf(“%c”, Pop(s));



}
Chọn một câu trả lời:
a. CBA

b. CAB

c. ABC

d. ACB

Phản hồi
Đáp án đúng là: CBA
Các ứng dụng cơ bản của hàng đợi gồm
Chọn một câu trả lời:
a. Tất cả các phương án đều đúng

b. Chuyển đổi cơ số

c. Tất cả các phương án đều sai

d. Đảo ngược xâu ký dự

Phản hồi
Đáp án đúng là: C. Tất cả các phương án đều sai
Tham khảo: Tham khảo Tài liệu hướng dẫn học Bài 6 – Ngăn xếp và Hàng đợi, mục II, bản Text
Ứng dụng cơ bản của ngăn xếp gồm
Chọn một câu trả lời:
a. Chuyển đổi cơ số



b. Đảo ngược xâu ký tự

c. Tất cả các phương án đều đúng

d. Tính giá trị biểu thức

Phản hồi
Đáp án đúng là: D. Tất cả các phương án đều đúng
Tham khảo: Tham khảo Tài liệu hướng dẫn học Bài 6 – Ngăn xếp và Hàng đợi, mục I, bản Text
Cho các phần tử sau: 31, 19, 36, 20, 41, 17, 33, 32. Tạo cây NPTK từ các phần tử trên. Hãy cho
biết sau khi xóa phần tử 33 trên cây sau đó áp dụng phương pháp duyệt LNR thì kết quả thu được
thứ tự các phần tử là như thế nào?
Chọn một câu trả lời:
a. 17, 20, 19, 32, 41, 36, 31

b. 31, 19, 17, 20, 36, 32, 41

c. 31, 19, 36, 20, 41, 17, 32

d. 17, 19, 20, 31, 32, 36, 41

Phản hồi
Đáp án đúng là: C. 17, 19, 20, 31, 32, 36, 41
Tham khảo: Tham khảo Tài liệu hướng dẫn học Bài 7 – Cây, mục V, bản Text
Cho biết kết quả khi duyệt cây sau bằng phương pháp duyệt LNR (Left-Node-Right)?


Chọn một câu trả lời:
a. 28, 32, 30, 38, 35, 47, 45, 55, 50, 40


b. 40, 35, 30, 28, 32, 38, 50, 45, 47, 55

c. 55, 50, 45, 47, 40, 38, 35, 32, 30, 28

d. 28, 30, 32, 35, 38, 40, 45, 47, 50, 55

Phản hồi
Đáp án đúng là: 28, 30, 32, 35, 38, 40, 45, 47, 50, 55
Cho cây NPTK, Cho biết kết quả duyệt cây theo thứ tự LNR là:

Chọn một câu trả lời:


×