Cod sursa(job #1886609)

Utilizator thinkphpAdrian Statescu thinkphp Data 20 februarie 2017 23:39:31
Problema Sortare prin comparare Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 1.01 kb
#include <iostream>
#include <fstream>
#include <vector>
#define FIN "algsort.in"
#define FOUT "algsort.out"

using namespace std;

template<class ItemTypeVec>
void selectionSort(vector<ItemTypeVec> &vec) {

     int min;  

     for(int i = 0; i < vec.size(); ++i) {

         int indexMin = i;

             for(int j = i + 1; j < vec.size(); ++j) {

                 if( vec[ j ] < vec[ indexMin ] ) {

                    min = j;
                 } 
             } 

          if(i != min) {

             auto tmp = move(vec[ i ]);

             vec[ i ] = move(vec[ min ]);

             vec[ min ]  = move( tmp ); 
          }
     }
}

int main() {

    vector<int> vec; 

    ifstream fin( FIN );
    ofstream fout( FOUT );

    int num,

        n; 
 
      fin>>n;

      while( fin>>num )

      vec.push_back( num );   

      selectionSort( vec ); 
          
      for(const auto &number : vec) {

          fout<<number<<" ";  
      }

    return(0);
}