‹ 上一题 下一题 ›

g4-03934. GESP-4级-2024-09-单选-第11题 未做

1000 ms 256 MB 测试点 ? GESPGESP-42024-09单选客观题4级·排序排序算法

下面代码实现了冒泡排序函数,则横线上应填写( )。

//交换数组arr的第i个元素和第j个元素
void swap(vector<int> &arr, int i, int j) {
    int tmp = arr[i];
    arr[i] = arr[j];
    arr[j] = tmp;
}

int bubble_sort(vector<int> &arr) {
    for (int i = arr.size() - 1; i > 0; i--) {
        bool flag = false; // 标志位
        ____________{    // 在此处填入代码
            if(arr[j] > arr[j + 1]) {
                swap(arr, i, j);
                flag = true;
            }
        }
        if(!flag)
            break; // 此轮"冒泡"未交换任何元素
    }
}

  • A. ```cpp
    for (int j = 0; j < arr.size() - 1; j++)
- **B.** ```cpp
for (int j = arr.size() - 1; j > 0; j--)
  • C. ```cpp
    for (int j = 0; j < i; j++)
- **D.** ```cpp
for (int j = i-1; j <=0; j--)
未选择
输入
输出

            
答案