Thứ năm, 14/11/2024
IMG-LOGO

Câu hỏi:

06/07/2024 88

Cho cấu trúc dữ liệu như sau:
typedef struct Node
{
int Key;
Node *NextNode;
} OneNode;
typedef SLLOneNode * Type;
Thuật toán chọn trực tiếp viết trên ngôn ngữ C++ áp dụng cho danh sách liên kết đơn quản lý bởi một phần tử đầu tiên được mô tả:
void StraightSelection(Type &SList)
{
Type MinNode;
int Temp;
Type CurrNode,TempNode;
CurrNode = SList;
while (CurrNode!=NULL)
{
TempNode = CurrNode->NextNode;
MinNode = CurrNode;
while (TempNode!=NULL)
{
TempNode = CurrNode->NextNode;
MinNode = CurrNode;
while (TempNode!=NULL)
{
if (………………………………………………)
MinNode = TempNode;
TempNode = TempNode->NextNode;
}
[1] Temp = MinNode->Key;
[2] MinNode->Key = CurrNode->Key;
[3] CurrNode->Key = Temp CurrNode=CurrNode->NextNode;
}
}
Tìm mô tả chính xác cho [1], [2], [3]

A. Hoán vị 2 mối liên kết

B. Hoán vị 2 vùng giá trị

Đáp án chính xác

C. Hoán vị nút đầu và nút cuối

D. Hoán vị 2 nút kế tiếp nhau

Trả lời:

verified Giải bởi Vietjack

Chọn đáp án B

Câu trả lời này có hữu ích không?

0

CÂU HỎI HOT CÙNG CHỦ ĐỀ

Câu 1:

Cho thuật toán tìm nhị phân không đệ quy sau:
int NRecBinarySearch (int M[], int N, int X)
{ int First = 0;
int Last = N – 1;
while (First <= Last)
{
int Mid = (First + Last)/2;
if (X == M[Mid])
return(Mid);
if (X < M[Mid])
Last = Mid – 1;
else
First = Mid + 1;
}
return(-1);
}
Chọn câu đúng nhất trong trường hợp tốt nhất khi phần tử ở giữa của mảng có giá trị bằng X:

Xem đáp án » 14/10/2022 184

Câu 2:

Cấu trúc dữ liệu cho kiểu dữ liệu sinh viên như sau:
typedef struct tagSV{
char MSSV[8];
char Ten[30];
char NgaySinh[11];
float DTB;
}SV;
Khai báo
SV sv1, *sv2;
Lựa chọn các câu đúng nhất để gán giá trị cho mã sinh viên của sv1 và sv2:

Xem đáp án » 14/10/2022 181

Câu 3:

Cấu trúc dữ liệu nào tương ứng với LIFO?

Xem đáp án » 14/10/2022 161

Câu 4:

Lựa chọn câu đúng nhất về danh sách liên kết đôi (Doubly Linked List):

Xem đáp án » 14/10/2022 159

Câu 5:

Chọn định nghĩa đúng nhất đối với cây nhị phân tìm kiếm:

Xem đáp án » 14/10/2022 159

Câu 6:

Cho thuật toán sau:
int LinearSearch (int M[], int N, int X)
{ int k = 0;
while (M[k] != X k < N )
k++;
if (k < N )
return (k);
return (-1);
}
Chọn câu đúng nhất trong trường hợp xấu nhất khi không tìm thấy phần tử nào có giá trị bằng X:

Xem đáp án » 14/10/2022 149

Câu 7:

Cho thuật toán sau:
int LinearSearch (float M[], int N, float X)
{
int k = 0;
M[N] = X;
while (M[k] != X) //n+1 lan
(M[k] != X) //n+1 lan k++;
if (k < N)
return (k);
return (-1);
}
Chọn câu đúng nhất trong trường hợp xấu nhất khi không tìm thấy phần tử nào có giá trị bằng X:

Xem đáp án » 14/10/2022 146

Câu 8:

Chiều dài đường đi của một cây (path’s length of the tree) được định nghĩa là tổng tất cả các chiều dài đường đi của tất cả các nút trên cây. Xét cây sau:
Chiều dài đường đi của một cây (path’s length of the tree) được định nghĩa là tổng tất cả các chiều dài đường đi của tất cả các nút trên cây. Xét cây sau: (ảnh 1)

Xem đáp án » 14/10/2022 140

Câu 9:

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] < M[J-1])
Swap(M[J], M[J-1]);
return;
}
Chọn câu đúng nhất cho hàm Swap

Xem đáp án » 14/10/2022 136

Câu 10:

Cho cây biểu thức sau:
Cho cây biểu thức sau: Chọn biểu thức tương ứng với cây (ảnh 1)
Chọn biểu thức tương ứng với cây

Xem đáp án » 14/10/2022 136

Câu 11:

Chọn định nghĩa đúng nhất về hàng đợi (Queue):

Xem đáp án » 14/10/2022 130

Câu 12:

Tìm kiếm xem trong danh sách liên kết đơn có tồn tại nút có thành phần dữ liệu là SearchData hay không. Thao tác này chúng ta vận dụng thuật toán tìm tuyến tính để tìm kiếm:
typedef struct Node
{
int Data;
Node * Link;
} OneNode;'
typedef OneNode * Pointer;
Pointer SSList; // Quản lý danh sách liên kết đơn bởi 1 phần tử đầu
B1: CurNode = SLList
B2: IF (………………………………………………)
Thực hiện BKT
B3: CurNode = CurNode->Link
B4: Lặp lại B2
BKT: Kết thúc
Chọn điều kiện hợp lý cho mã giả ở B2

Xem đáp án » 14/10/2022 129

Câu 13:

Biểu diễn và tổ chức ngăn xếp (Stack) bằng danh sách liên kết giả sử bề mặt của ngăn xếp là đầu danh sách liên kết:
typedef struct SElement
{ T Key;
SElement *Next;
} SOneElement;
typedef struct SOneElement *SSTACK;
SSTACK SSP;
Thêm 1 phần tử vào ngăn xếp (dùng cấu trúc dữ liệu mô tả ở trên)
B1: NewElement = Khởi tạo nút mới (dùng toán tử new)
B2: if (NewElement == NULL)
Thực hiện BKT
B3: if (SSP == NULL)
B3.1: SSP = NewElement
B3.2: Thực hiện BKT
B4: …………………………………………
B5: …………………………………………
BKT: Kết thúc
Chọn câu lệnh chính xác cho B4 và B5

Xem đáp án » 14/10/2022 117

Câu 14:

Với cấu trúc dữ liệu như sau:
typedef struct DNode
{
int Key;
DNode * NextNode;
DNode * PreNode;
} DOneNode
typedef DLLOneNode * DPointerType;
typedef struct DPairNode
{ DPointerType DLLFirst;
DPointerType DLLLast;
} DPType;
Hàm thêm phần tử vào cuối danh sách liên kết đôi quản lý bởi 2 phần
tử đầu và cuối
DPointerType DLLAddLast(DPType &DList, int NewData)
{
DPointerType NewNode = gọi hàm tạo nút mới có vùng dữ liệu là
NewData ;
if (NewNode == NULL)
return (NULL);
if (DList.DLLLast == NULL)
DList.DLLFirst = DList.DLLLast = NewNode;
else
{
……………………………………………….
……………………………………………….
………………………………………………
}
return (NewNode);
} Hãy lựa chọn câu đúng nhất để điền vào chỗ trống ở trên

Xem đáp án » 14/10/2022 117

Câu 15:

Chọn định nghĩa đúng nhất về cây cân bằng tương đối:

Xem đáp án » 14/10/2022 106