首页 > 试题广场 >

程序完善题: 下面的程序完成了以下功能:在非降序列中二

[问答题]
程序完善题:
下面的程序完成了以下功能:在非降序列中二分查找一个数,当v存在时返回它出现的第一个位置,如果不存在,返回这样一个下标i,在此处插入v(原来的元素A[i], A[i+1],…全部向后移动一个位置)后序列仍然有序:

#include<iostream>

using namespace std;

int lower_bound(int *A, int l, int r, int v) {

    int mid;

    while (l < r) {

        mid =               ;

        if (          )r = mid;

        else l = mid + 1;

    }

return l;

}

int main() {

    int A[10] = {0, 0, 1, 2, 4, 5, 10, 20, 20, 30};

// 在 A 数组里用lower_bound查找 40

    cout << lower_bound(                  ) << endl;

    return 0;

}

这道题你会答吗?花几分钟告诉大家答案吧!