Informatică, întrebare adresată de Qubicon, 9 ani în urmă

Se citeste un vector cu n elemente intregi. Sa se ordoneze crescator prima jumatate a vectorului si descrescator cealalta jumatate.

Răspunsuri la întrebare

Răspuns de express
8
// Nu ai specificat daca lungimea vectorului este para sau impara. In mod normal daca spui jumatatea vectorului am considerat ca n este par si am considerat jumatatea lui k = n / 2. Succes!
#include <iostream>
using namespace std;
int n,k,v[1005],aux,i;
bool ok;
int main()
{
    cin >> n;
    k = n / 2;
    for(i=1;i<=n;i++) cin>>v[i];
    do
    {
        ok=true;
        for(i=1;i<k;i++)
         if(v[i]>v[i+1])
         {
             aux=v[i];
             v[i]=v[i+1];
             v[i+1]=aux;
             ok=false;
         }
    } while (!ok);
    do
    {
        ok=true;
        for(i=k+1;i<n;i++)
         if(v[i]<v[i+1])
         {
             aux=v[i];
             v[i]=v[i+1];
             v[i+1]=aux;
             ok=false;
         }
    } while (!ok);
    for(i=1;i<=n;i++) cout<<v[i]<<" ";
    return 0;
}



Qubicon: O poți face, te rog, la un nivel mai scăzut?
express: Bubble Sort de doua ori...e cel mai simplu nivel posibil prin care poti sorta un vector. La clasa noastra daca nu sti Bubble Sort ... ramai corigent.
Alte întrebări interesante