top1编程
← 返回题目
题解

【入门】在最大数后面插入一个数

1 条题解

  • 0
    @ 2026-7-31 9:33:47

    解题思路

    在数组最大数的后面插入一个新数 y。

    先找到最大数的位置,输出它前面和它本身,再插入 y,最后输出剩下的。

    参考代码

    #include <iostream>
    using namespace std;
    int main() {
        int n, a[101], y;
        cin >> n;
        for (int i = 0; i < n; i++) cin >> a[i];
        cin >> y;
        // 找最大数的位置
        int ma = 0;
        for (int i = 1; i < n; i++) {
            if (a[i] > a[ma]) ma = i;
        }
        // 先输出最大数前面的,再插入 y,再输出后面的
        for (int i = 0; i <= ma; i++) cout << a[i] << ' ';
        cout << y << ' ';
        for (int i = ma + 1; i < n; i++) cout << a[i] << ' ';
        cout << endl;
        return 0;
    }
    

    O(N) 时间,O(N) 空间

    • 1