/ Forside / Teknologi / Udvikling / C/C++ / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
C/C++
#NavnPoint
BertelBra.. 2425
pmbruun 695
Master_of.. 501
jdjespers.. 500
kyllekylle 500
Bech_bb 500
scootergr.. 300
gibson 300
molokyle 287
10  strarup 270
[c++]Sortere tal i et array...
Fra : holst


Dato : 10-03-02 23:47

Hej NG..

Jeg har et array i c++ fyldt med tal, som jeg gerne vil have sorteret
således at array[0] = det største tal, array[1] = det næststørste tal osv...

Findes der en funktion til dette, eller skal jeg selv lave den? -og hvordan
skal den laves??

Håber nogen vil hjælpe en c-newbie...

På forhånd tak...
Allan Eriksen



 
 
Jonas Meyer Rasmusse~ (11-03-2002)
Kommentar
Fra : Jonas Meyer Rasmusse~


Dato : 11-03-02 00:56

Hejsa.

Du kan bruge sort algoritmen fra <algorithm>
og functor klassen greater fra <functional> til at opnå det.
her er et lille program der gør benytter sig af den funktionalitet i C++:

#include <algorithm>
#include <functional>

int main(int, char**)
{
int i;
int vals[] = { 1,2,3,4,5,6,7,8,9,9,8,8,8,7,6,7,7,7,7,88,100,88,10};
size_t sz = sizeof( vals ) / sizeof( int );

std::sort( vals, vals+sz, std::greater< int >() );

return 0;
}

Jeg tror ikke lige jeg kan overskue om noget af det kræver uddybning, det
kommer vel
an på hvor meget du kender til iteratorer og functor klasser men
hvis der er noget af det som er sort kan du jo bare spørge igen :)

mvh Jonas



holst (11-03-2002)
Kommentar
Fra : holst


Dato : 11-03-02 23:31

Tusind tak for hjælpen...har nu løst problemet, og er kommet videre!

\Allan Eriksen

"Jonas Meyer Rasmussen" <meyer_remove_@diku.dk> wrote in message
news:a6grop$mi$1@eising.k-net.dk...
> Hejsa.
>
> Du kan bruge sort algoritmen fra <algorithm>
> og functor klassen greater fra <functional> til at opnå det.
> her er et lille program der gør benytter sig af den funktionalitet i C++:
>
> #include <algorithm>
> #include <functional>
>
> int main(int, char**)
> {
> int i;
> int vals[] = { 1,2,3,4,5,6,7,8,9,9,8,8,8,7,6,7,7,7,7,88,100,88,10};
> size_t sz = sizeof( vals ) / sizeof( int );
>
> std::sort( vals, vals+sz, std::greater< int >() );
>
> return 0;
> }
>
> Jeg tror ikke lige jeg kan overskue om noget af det kræver uddybning, det
> kommer vel
> an på hvor meget du kender til iteratorer og functor klasser men
> hvis der er noget af det som er sort kan du jo bare spørge igen :)
>
> mvh Jonas
>
>



Søg
Reklame
Statistik
Spørgsmål : 177500
Tips : 31968
Nyheder : 719565
Indlæg : 6408514
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste