题目编号
语言
全部语言
等级
全部等级
知识点
选择知识点 (0)
找到 1260 道单选题
EXY-SC-1205
第 296 题
根据唯一分解定理,下面整数的唯一分解是正确的( )。
A
$18 = 3 \times 6$
B
$28 = 4 \times 7$
C
$36 = 2 \times 3 \times 6$
D
$30 = 2 \times 3 \times 5$
语言: C++
GESP真题 五级
2025.3
单选题号: 5
EXY-SC-1204
第 297 题
用以下辗转相除法(欧几里得算法)求 gcd(84, 60) 的步骤中,第二步计算的数是( )。
int gcd(int a, int b) {
    int big = a > b ? a : b;
    int small = a < b ? a : b;
    if (big % small == 0) {
        return small;
    }
    return gcd(small, big % small);
}
A
84 和 60
B
60 和 24
C
24 和 12
D
12 和 0
语言: C++
GESP真题 五级
2025.3
单选题号: 4
EXY-SC-1203
第 298 题
假设双向循环链表包含头尾哨兵结点(不存储实际内容),分别为 headtail,链表中每个结点有两个指针域 prevnext,分别指向该结点的前驱及后继结点。下面代码实现了一个空的双向循环链表,横线上应填的最佳代码是( )。
// 链表结点
template <typename T>
struct ListNode {
    T data;
    ListNode<T>* prev;
    ListNode<T>* next;
 
    // 构造函数
    explicit ListNode(const T& val = T())
        : data(val), prev(nullptr), next(nullptr) {}
};
 
struct LinkedList {
    ListNode<T>* head;
    ListNode<T>* tail;
};
 
void InitLinkedList(LinkedList* list) {
    list->head = new ListNode<T>();
    list->tail = new ListNode<T>();     
    // 在此处填入代码
}
A
list->head->prev = list->head;
list->tail->prev = list->head;
B
list->head->next = list->tail;
list->tail->prev = list->head;
C
list->head->next = list->tail;
list->tail->next = list->head;
D
list->head->next = list->tail;
list->tail->next = nullptr;
语言: C++
GESP真题 五级
2025.3
单选题号: 3
EXY-SC-1202
第 299 题
双向链表中每个结点有两个指针域 prevnext,分别指向该结点的前驱及后继结点。设 p 指向链表中的一个结点,它的前驱结点和后继结点均非空。要删除结点 p,则下述语句中错误的是( )。
A
p->next->prev = p->next;
p->prev->next = p->prev;
delete p;
B
p->prev->next = p->next;
p->next->prev = p->prev;
delete p;
C
p->next->prev = p->prev;
p->next->prev->next = p->next;
delete p;
D
p->prev->next = p->next;
p->prev->next->prev = p->prev;
delete p;
语言: C++
GESP真题 五级
2025.3
单选题号: 2
EXY-SC-1201
第 300 题
链表不具备的特点是( )。
A
可随机访问任何一个元素
B
插入、删除操作不需要移动元素
C
无需事先估计存储空间大小
D
所需存储空间与存储元素个数成正比
语言: C++
GESP真题 五级
2025.3
单选题号: 1
当前页显示 296 - 300 ,共 1260 道单选题