Kezdőoldal » Számítástechnika » Programozás » Struktúra rendezése hogy kell...

Struktúra rendezése hogy kell általánosságba megvalósítani?

Figyelt kérdés
A c++-nál ha van egy struktúrám azt hogy tudom rendezni úgy hogy kritérium alapján és az egész sort cseréli? esetleg arra nincs módszer két fajta kritérium alapján rendezzen?
2013. okt. 22. 19:44
 1/9 anonim ***** válasza:
Dehogynem, a rendezés tételt alakítsd át kicsit.
2013. okt. 22. 21:21
Hasznos számodra ez a válasz?
 2/9 iostream ***** válasza:
Az std::sort háromparaméteres változata vár egy hívható valamit harmadik paraméterként. Na, az.
2013. okt. 22. 21:29
Hasznos számodra ez a válasz?
 3/9 A kérdező kommentje:
ja és hogy működik a std::sort utasítás pontosan. szintaxisra vagyok kíváncsi mert a linkekből nem derült ki nekem semmi.
2013. okt. 23. 11:57
 4/9 iostream ***** válasza:
Akkor nézd meg jobban a linkeket. Az is kiderülne gyorsan, hogy a sort nem utasítás hanem függvény.
2013. okt. 23. 12:38
Hasznos számodra ez a válasz?
 5/9 A kérdező kommentje:
a lényegen nem változtat hogy nem tudom hogy működik a rendezés.
2013. okt. 23. 14:17
 6/9 anonim ***** válasza:
46%
Hát ez rettentően szomorú. Programozó aki nem tud specifikációt olvasni, amelyen emberek ezrei, tízezrei kiigazodnak?
2013. okt. 23. 14:20
Hasznos számodra ez a válasz?
 7/9 A kérdező kommentje:
2013. okt. 23. 14:26
 8/9 A kérdező kommentje:
Mivel a programozás ezen részét még nem tanultam ezért egyedül próbáltam felkutatni a megoldást. Nem vagyok programozó de próbálok tanulni. Az ami ott a link mögött van számomra nem teljesen érthető mert az én feladatomra nem igazán tudom használni.
2013. okt. 23. 14:35
 9/9 iostream ***** válasza:
51%

Ott a példa a linkeden:


bool myfunction (int i,int j) { return (i<j); }


struct myclass {

bool operator() (int i,int j) { return (i<j);}

} myobject;


int main () {

int myints[] = {32,71,12,45,26,80,53,33};

std::vector<int> myvector (myints, myints+8); // 32 71 12 45 26 80 53 33


// using default comparison (operator <):

std::sort (myvector.begin(), myvector.begin()+4); //(12 32 45 71)26 80 53 33


// using function as comp

std::sort (myvector.begin()+4, myvector.end(), myfunction); // 12 32 45 71(26 33 53 80)


// using object as comp

std::sort (myvector.begin(), myvector.end(), myobject); //(12 26 32 33 45 53 71 80)


// print out content:

std::cout << "myvector contains:";

for (std::vector<int>::iterator it=myvector.begin(); it!=myvector.end(); ++it)

std::cout << ' ' << *it;

std::cout << '\n';


return 0;

}



Ha ezt nem tudod használni, akkor hagyd abba.

2013. okt. 23. 15:59
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!