题目编号
语言
全部语言
等级
全部等级
知识点
选择知识点 (0)
找到 1260 道单选题
EXY-SC-1135
第 366 题

下面最小生成树的 Kruskal 算法程序中,横线处应该填入的是( )。

#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
struct Edge {
    int u, v, weight;
    bool operator <(const Edge & other) const {
        return weight < other.weight;
    }
};
int findParent(int vertex, vector<int> & parent) {
    if (parent[vertex] == -1)
        return vertex;
    return parent[vertex] = findParent(parent[vertex], parent);
}
int main() {
    int n, m;
    cin >> n >> m; // n: 顶点数, m: 边数
    vector<Edge> edges(m);
    vector<int> parent(n, -1);
    int totalWeight = 0;
    for (int i = 0; i < m; i++)
        cin >> edges[i].u >> edges[i].v >> edges[i].weight;
    sort(edges.begin(), edges.end());
 
    for (const auto & edge : edges) {
        int uParent = findParent(edge.u, parent);
        int vParent = findParent(edge.v, parent);
        if (________) { // 在此处填入选项
            parent[uParent] = vParent;
            totalWeight += edge.weight;
        }
    }
}
A

uParent == vParent

B

uParent >= vParent

C

uParent != vParent

D

uParent <= vParent

语言: C++
GESP真题 八级
2024.9
单选题号: 10
EXY-SC-1134
第 367 题

下列程序实现了输出杨辉三角形,代码中横线部分应该填入的是( )。

#include <iostream>
using namespace std;
#define N 35
int a[N][N];
int main() {
    int n;
    cin >> n;
    for (int i = 1; i <= n; i++)
        for (int j = 1; j <= i; j++) {
            if (j == 1 || j == i)
                a[i][j] = 1;
            else
                ________ // 在此处填入选项
        }
    for (int i = 1; i <= n; i++) {
        for (int j = 1; j <= i; j++)
            cout << a[i][j];
        cout << endl;
    }
    return 0;
}
A

a[i][j] = a[i - 1][j - 1] + a[i - 1][j];

B

a[i][j] = a[i][j - 1] + a[i - 1][j];

C

a[i][j] = a[i - 1][j] + a[i - 1][j];

D

a[i][j] = a[i - 1][j - 1] + a[i][j];

语言: C++
GESP真题 八级
2024.9
单选题号: 9
EXY-SC-1133
第 368 题

上一题中,如果主函数为如下的程序,则最后的排列数是多少个?( )。

int main() {
    int a[5] = {1, 2, 3, 4, 5};
    pailie(0, 5, a);
    return 0;
}
A

120

B

60

C

240

D

180

语言: C++
GESP真题 八级
2024.9
单选题号: 8
EXY-SC-1132
第 369 题

下面 pailie 函数是一个实现排列的程序,横线处可以填入的是()。

#include <iostream>
using namespace std;
int sum = 0;
void swap(int & a, int & b) {
    int temp = a;
    a = b;
    b = temp;
}
void pailie(int begin, int end, int a[]) {
    if (begin == end) {
        for (int i = 0; i < end; i++)
            cout << a[i];
        cout << endl;
    }
    for (int i = begin; i < end; i++) {
        __________ // 在此处填入选项
    }
}
A
swap(a[begin + 1], a[i]);
pailie(begin + 1, end, a);
swap(a[i], a[begin]);
B
swap(a[begin], a[i]);
pailie(begin, end, a);
swap(a[i], a[begin]);
C
swap(a[begin], a[i]);
pailie(begin + 1, end, a);
swap(a[i], a[begin]);
D
swap(a[begin] + 1, a[i]);
pailie(begin + 1, end, a);
swap(a[i], a[begin + 1]);
语言: C++
GESP真题 八级
2024.9
单选题号: 7
EXY-SC-1131
第 370 题

在一个单位圆上,随机分布 $n$ 个点,求这 $n$ 个点能被一个单位半圆周全部覆盖的概率( )。

A

$\frac{n}{2^{n-1}}$

B

$\frac{1}{n^2}$

C

$\frac{1}{n}$

D

$\frac{1}{2^n}$

语言: C++
GESP真题 八级
2024.9
单选题号: 6
当前页显示 366 - 370 ,共 1260 道单选题