Skocz do zawartości

[C++]Sortowanie stringow...


piroman88

Polecane posty

Moje pytanie dotyczy sortowania stringow a wiec wszystko ladnie oile sortuje ciagi liter ale gdy pojawiaja sie cyfry to juz nic nie wyglada ladnie ;)

No wiec urzylem prostego sortowania babelkowego bo chodzi o posortowanie doslownie kilkunastu stringow.

Zrobilem to w ten sposob:

 


//...

//-----------wczytywanie-----------------

string linia[50];
int a=1;    

fstream wczytywanie("wyniki.wyn");              
while( getline( wczytywanie, linia[a])){
    a++;
}
wczytywanie.close();


//-----------sortowanie-------------------

string nowa_linia;

for( int i=1; i<a-1; i++){
    for( int b=1; b<a-1; b++){
         if(linia[i].compare(linia[i+1])==1){

              nowa_linia = linia[i]; 
              linia[i] = linia[i+1]; 
              linia[i+1] = nowa_linia;

         }
    }
}

//...

 

w pliku "wyniki.wyn" sa zapisane takie ciagi znakow:

 

...

0002 imie1

0023 imie2

0004 imie3

0231 imie4

...

 

Wiec prosze o pomoc w jaki sposob moge posortowac te stringi.

Link do komentarza
Udostępnij na innych stronach

Ale o dziwo dzialalo :)

 

Poprawione:

 

//-----------sortowanie-------------------

string nowa_linia;

for( int i=1; i<a-1; i++){
    for( int b=i; b<a-1; b++){
         if(linia[i].compare(linia[b])==1){

              swap(linia[i], linia[b]);

         }
    }
}

 

Ale niestety nadal nie chce posortowac cyfr z tego stringu... :(

Link do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat jest archiwizowany i nie można dodawać nowych odpowiedzi.

×
×
  • Utwórz nowe...