Aktív témák
-
Steelheart
senior tag
Hát, igen, nem túl szerencsés...
Én most épp ahhoz használom föl a QuickSortot, hogy egy típusfájlt az egyik szöveg oszlopa szerint abc-sorrendbe tegyek. Az első betű szerint már megy is, persze leszámítva az újabb gépek ASCII eltérését, a második és harmadik stb. betűvel még bajok vannak... de holnapra meg kell csinálnom, szal jobb lesz belehúzni. Valszeg megint csak egy betűt írtam el vhol...
-
Spyx
tag
Még aznap megoldottam én is a quicksortot. De ennek ellenére megbuktam(kötprogihoz kellet volna).
Na mindey jövőre már legalább nem kel ezt a kérdést újra feltennem -
Steelheart
senior tag
Hát, ki tudja
de még másoknak is jól jöhet, és nem kell C-ből kisilabizálni, hogy is kell, persze C ismerete nélkül
Anno fél éve én az elméletével találkoztam egy Nemes Tihamér versenyfeladatban, ahol vmi ülésrendre volt ez a quicksort, szövegben leítva az algoritmusa, hogy ''ezt ide ültetjük, aztán felállítjuk...'' LOL
És végülis innen programoztam meg, egy apró PH!-s segítséggel, ugyanis egy relációs jelet fordítva írtam.
-
Steelheart
senior tag
Hát, ki tudja
de még másoknak is jól jöhet, és nem kell C-ből kisilabizálni, hogy is kell, persze C ismerete nélkül
Anno fél éve én az elméletével találkoztam egy Nemes Tihamér versenyfeladatban, ahol vmi ülésrendre volt ez a quicksort, szövegben leítva az algoritmusa, hogy ''ezt ide ültetjük, aztán felállítjuk...'' LOL
És végülis innen programoztam meg, egy apró PH!-s segítséggel, ugyanis egy relációs jelet fordítva írtam.
-
DopeBob
addikt
válasz
Steelheart #11 üzenetére
egy honap alatt csak megoldotta valahogy
-
Steelheart
senior tag
Program quicksortprob;
uses crt;
const maxtomb=20;
type tomb=array [1..maxtomb] of integer;
var i:integer;
X2:Tomb;
Procedure valogat(eleje,vege: integer; var kozep:integer; var X:Tomb);
var i,j,k:integer;
Begin
k:=X[eleje];
While eleje<vege do Begin
While (X[vege]>k) and (eleje<vege) do dec(vege);
If eleje<vege then Begin
X[eleje]:=X[vege];
inc(eleje);
While (X[eleje]<=k) and (eleje<vege) do inc(eleje);
If eleje<vege then Begin
X[vege]:=X[eleje];
dec(vege);
End;
End;
End;
X[eleje]:=k;
kozep:=eleje;
End;
Procedure quicksort(eleje,vege:integer; var X:Tomb);
var kozep:integer;
Begin
valogat(eleje,vege,kozep,X);
If eleje<kozep-1 then quicksort(eleje,kozep-1,X);
If vege>kozep+1 then quicksort(kozep+1,vege,X);
End;
{**************************}
Begin
ClrScr;
randomize;
For i:=1 to maxtomb do Begin X2[(i)]:=random(100); Write(X2[(i)],', '); End;
quicksort(1,maxtomb,X2);
WriteLn;
WriteLn;
WriteLn('********---********');
WriteLn;
For i:=1 to maxtomb do Write(X2[(i)],', ');
Repeat until keypressed
End. -
Steelheart
senior tag
Nos, ez számokra íródott, ha abc-sorrendben akarnk rendezni, az kicsit bonyolultabb, még néhány procedúrát és funkciót igényel.
Ha kell még vkinek, ha nem, azé nesze, vkinek még jól jöhet:
[Szerkesztve] -
Steelheart
senior tag
Aktuális még a problem? már a rendezéses
-
Spyx
tag
Khalox jól látja a helyzetet. A 2.oszlop szerint akarom rendezni . Tehát a egy sorban összetartozó elemek a rendezés után is ugyanabban a sorban legyenek.
-
cucka
addikt
-
b14
senior tag
Hi
Irod, hogy a masodik elem szrint, akkor az elso es a harmadik az micsoda?
Lehet, hogy csak an nem ertem, de kerlek magyarazd el egy picit bovebben a kerdesedet, mert ha ertenem valoszinuleg tudnek ra valaszolni -
cucka
addikt
hát nem olyan nehéz megvalósítani mint amilyennek tűnik. egyébként itt nézz szét Bővebben: link. ami egyszerűbbnek tűnik, az a bubble sort (buborék rendezés) és az insertion sort (beszúró rendezés), bár ezek elég lassúak. 3000-es tömbhöz nagyon ajánlott valami gyorsabb.
-
cucka
addikt
hát gyors rendezés a quicksort pl. Bővebben: link.
-
Spyx
tag
Tud -e valaki valamilyen gyors rendezési formát egy két dimenziós tömb rendezésére(3000*3-as) .A második oszlop szerint akarom rendezni,növekvő sorrendbe. Minden eleme word. Kérhetek kész kódrészletet?!
Aktív témák
- Nintendo Switch 2 újszerű állapotban
- Új 2K Gamer PC Ryzen 5 9600X/RTX 3070 Ti 8Gb/2x8Gb DDR5 6000Mhz/500Gb NVME SSD/2-3Év gari
- Asztali PC , R5 8400F , RTX 3070 , 16GB DDR5 , 512GB NVME , 1TB HDD
- Intel Core i9-14900K - Cores x 24
- Új Gamer PC Ryzen 5 9600X/RTX 3060 12Gb/2x8Gb DDR5 6000Mhz/500Gb NV3 NVME SSD/2-3Év gari
- 0perces! Samsung Galaxy Book5 Pro 360 2in1 Core Ultra 7 256V 16GB 2TB 16" WQXGA+ AMOLED TOUCH 1évgar
- Microsoft Windows, Office & Vírusirtók: Akciók, Azonnali Szállítás, Garantált Minőség, Garancia!
- Bezámítás! Gigabyte G5 KC Gamer notebook - i5 10500H 16GB DDR4 512GB SSD RTX 3060 6GB WIN10
- Bomba ár! Dell Precision 7740 - i7-9850H I 32GB I 256SSD I 17,3" 4K I RTX3000 6G I Cam I W11 I Gari!
- ÁRGARANCIA!Épített KomPhone Ryzen 5 4500 16/32/64GB RAM RTX 3060 12GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest