Segítene valaki hol rontom el a rendezési algoritmust?
Ahogy szeretném az az, hogy megyek i-től a tömb végéig és megkeresem az adott intervallumon a legkisebbet (ez lenne a belső for ciklus), ha ez meg van elmentem ezt az értéket és a helyét majd ettől a poziciótól elkezdek visszafele menni az aktuális i indexig (úgy hogy még ne érjem el) és el kezdem "fentebb tolni" az értékeket mivel az aktuális minimum le van mentve egy külön változóba így nem számít, hogy felül van írva. Majd elérem ezt amit előbb írtam i indexet akkor ami kezdetben ott 0 indexen volt ugye a fentébb tolás miatt már az 1-es indexen van így a 0.indexre berakom az előbb megtalált minimumot. A következő ciklusban viszont mivel a 0. indexen már az egész tömb legkisebb eleme van így az 1-es indextől indulok i=1 től vizsgálom n-ig a legkisebbet.
Ezt próbáltam volna megvalósítani a fentebbi kódban, azonban mint "látható" nem sikerült és valahol félresiklik az egész. Az lenne a kérdésem, hogy hol rontom el avgy hogyan kéne megcsinálni? (ez a beszúrásos keresés, csak nem indexet mentek le, hanem konkrét értéket..legalábbis szerintem ennyi különbség lenne Elméletben)
További probléma, hogy ha bővítem pl a tömbot, akkor már nem teljesen jól rendez
int Array[]={99,154,72,0,-5,17,72,56,25,20,36}





sizeof(Array) <- ez nem jó C++ba for ciklusba beírni. Ezzel nem tudod meg, h hány elem van a tömbbe. Ez a tömb méretet adja csak meg, ami a memóriába van. Le kell osztatni egy elemmel még, hogy megkapd azt h meddig menjen a for. :).
sizeof(Array)/sizeof(Array[0])
Így már a tömb elemszám kapod meg. :)
for(int i=0;i<
sizeof(Array)/sizeof(Array[0]);i++)
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!