C++,想问问哪错了,以及程序运行超时该怎么解

img

img

在b[x]=n后加入:

for(i=0;i<x;i++) {
    b[i]=a[i];
}

觉得有用的话采纳一下哈

这个代码我没有看到哪了错了,思路上总体是对的,但是你说时间超限应该是你循环太多了,你可以去网上找找关于计算时间复杂度的文章,至于正确代码,有很多种方法:

#include<queue>

#include<iostream>

using namespace std;

priority_queue<int,vector<int>,greater<int> > q;//优先队列,把推进去的数自行从小到大排序

int main()
{
    int n;

    for(int i = 1;i <= 9;i ++)
    
        cin>>n,
        
        q.push(n);
        
    for(int i = 1;i <= 9;i ++)
    
        cout<<q.top()<<" ",
        
        q.pop(); 
        
 } 

至于优先队列的用法可以到网上自信探索,对你受益匪浅,实在不行可以来问我