220 câu trắc nghiệm Cấu trúc dữ liệu và giải thuật có đáp án - Phần 3
20 câu hỏi
Với cấu trúc dữ liệu như sau:
typedef struct DNode
{int Key;
DNode * NextNode;
DNode * PreNode;
} DOneNode;
typedef DOneNode * DPointerType;
typedef struct DLLPairNode
{ DPointerType DLLFirst;
DPointerType DLLLast;
} DLLPType;
Hàm duyệt qua các nút trong danh sách liên kết đôi quản lý bởi hai địa chỉ nút đầu tiên và nút cuối cùng thông qua DList để xem nội dung thành phần dữ liệu của mỗi nút
void DLLTravelling (DLLPType DList)
{
DPointerType CurrNode = DList.DLLFirst;
while (CurrNode != NULL) { cout <<
CurrNode->Key; …………………………………
}
return;
}
Chọn câu chính xác điền vào chỗ trống để mô tả việc di chuyển từ nút này sang nút khác
CurrNode = CurrNode ->NextNode ;
CurrNode = CurrNode ->Key ;
CurrNode ->NextNode = CurrNode;
CurrNode ->Key = CurrNode;
Với cấu trúc dữ liệu mô tả cho Stack:
typedef struct SElement
{
int Key;
SElement *Next;
} SOneElement;
typedef SOneElement *SSTACK;
Tìm mô tả chính xác cho hàm sau:
void SSDelete (SSTACK &SList)
{
while (SList != NULL)
{ SSTACK TempElement = SList;
SList = SList ->Next;
TempElement ->Next = NULL;
delete TempElement;
}
}
Hủy phần tử đầu của Stack
Hủy phần tử cuối của Stack
Hủy phần tử cuối của Stack và lấy giá trị đó in ra màn hình
Hủy toàn bộ Stack
Kết quả nào đúng khi thực hiện giải thuật sau:
long lt(int n)
{if (n==0) return 1;
else return (2*lt(n-1);
}
lt(12) = 2010
lt(12) = 1024
lt(7) = 720
lt(6) = 64
Kết quả nào đúng khi thực hiện giải thuật sau với a[]= {1, 3, 5}; n= 5, k= 3:![Kết quả nào đúng khi thực hiện giải thuật sau với a[]= {1, 3, 5}; n= 5, k= 3: (ảnh 1)](https://video.vietjack.com/upload2/quiz_source1/2022/07/capture-3-1657803431.png)
2 3 4
1 2 3
2 3 5
1 4 5
Kết quả nào đúng khi thực hiện giải thuật sau với a[]= {-3, -3, 15, -3}; n= 4; x= -3:
int FindX(int a[], int n, int x)
{int i;
for (i= n; i>= 1; i--) if (a[i]==x) return (i);
return (-1);
}
1
2
3
4
Dấu hiệu nào dưới đây cho biết danh sách liên kết đơn L là rỗng:
(L->left == NULL)
(L->ìnfor == NULL)
(L->next == NULL)
(L == NULL)
Kết quả nào đúng khi thực hiện giải thuật sau với a[]= {1, 3, 5, 4, 2}; n= 5:![Kết quả nào đúng khi thực hiện giải thuật sau với a[]= {1, 3, 5, 4, 2}; n= 5: (ảnh 1)](https://video.vietjack.com/upload2/quiz_source1/2022/07/capture-4-1657803764.png)
1 4 2 3 5
5 4 3 2 1
1 4 5 3 2
1 3 4 2 5
Thao tác nào dưới đây thực hiện trên hàng đợi (queue):
Thêm phần tử vào lối sau
Loại bỏ phần tử ở lối sau
Thêm phần tử vào lối trước
Thêm và loại bỏ phần tử tại vị trí bất kỳ
Dấu hiệu nào dưới đây cho biết hàng đợi đã có thao tác thêm và loại bỏ phần tử là rỗng:
Lối trước có giá trị > giá trị của lối sau
Lối sau nhận giá trị = 0
Lối trước có giá trị < giá trị của lối sau
Lối trước nhận giá trị = 0
Thao tác nào dưới đây thực hiện trên ngăn xếp (stack):
Thêm phần tử vào vị trí bất kỳ
Loại bỏ phần tử tại vị trí bất kỳ
Thêm và loại bỏ phần tử luôn thực hiện tại vị trí đỉnh (top)
Thêm và loại bỏ phần tử có thể thực hiện tại vị trí bất kỳ
Trong phép duyệt cây nhị phân có 24 nút theo thứ tự sau, nút gốc có thứ tự:
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à:
Nút gốc
Tất cả các nút
Nút con bên phải nhất
Nút con bên trái nhất
Cây nhị phân khác rỗng là cây:
Mỗi nút (trừ nút lá) đều có hai nút con
Tất cả các nút đều có nút con
Mỗi nút có không quá 2 nút con
Tất cả các nút đều có nút cha
Đồ thị G có n đỉnh và m cạnh với m, n thì ma trận kề của G luôn có dạng:
là ma trận vuông cấp n
là ma trận cấp nxm
là ma trận vuông cấp m
là ma trận cấp mxn
Đồ thị vô hướng G có chu trình Euler khi và chỉ khi:
G liên thông và mọi đỉnh G có bậc chẵn
mọi đỉnh G có bậc chẵn
G có chu trình Hamilton
G có đường đi Euler
Nhân tố nào là nhân tố chính ảnh hưởng đến thời gian tính của một giải thuật:
Máy tính
Thuật toán được sử dụng
Chương trình dịch
Kích thước của dữ liệu đầu vào của thuật toán
Chọn phát biểu đúng trong các phát biểu dưới đây: bằng cách chạy thử 1 thuật toán với 1 bộ dữ liệu, ta có thể:
Khẳng định thuật toán đúng nếu nó cho kết quả đúng
Khẳng định thuật toán sai nếu cho kết quả sai
Khẳng định thuật toán tốt nếu cho kết quả nhanh
Khẳng định thuật toán hiệu quả nếu cho kết quả đúng
Trong các mệnh đề sau đây, mệnh đề nào sai:
Kiểu dữ liệu là một tập hợp nào đó các phần tử dữ liệu cùng chung một thuộc tính
kiểu của một ngôn ngữ bao gồm các kiểu dữ liệu đơn và các phương pháp cho phép ta từ các kiểu dữ liệu đã có xây dựng nên các kiểu dữ liệu mới
Cấu trúc dữ liệu là các dữ liệu phức tạp, được xây dựng nên từ các kiểu dữ liệu đã có, đơn giản hơn bằng các phương pháp liên kết nào đó
Một trong ba mệnh đề trên là sai
Tìm mệnh đề sai trong các mệnh đề sau: Một cấu trúc dữ liệu bao gồm…
Một tập hợp nào đó các dữ liệu thành phần
Các dữ liệu thành phần đặt sát nhau trong bộ nhớ
Cho danh sách đặc có 10 phần tử. Khi thêm phần tử vào vị trí 4 trong danh sách, vòng lặp dịch chuyển tịnh tiến nội dung các phần tử L->Elements[i]=L->Elements[i+1] sẽ thực hiện:
4 lần
5 lần
6 lần
Tất cả đều sai








