Hirdetés
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
- ÚJ, bontatlan APPLE Pencil Pro, fehér (MX2D3ZM/A) 1 év Apple garancia!
- Inno3D GeForce RTX 4070 Ti X3 12G - Karácsonyi akcióban!
- Redragon Kumara K552 RGB Brown Switch magyar billentyűzet
- Lenovo Thinkpad P1 Gen 6 - i9-13980HX, 32GB, 2TB SSD, 16" WQUXGA (3840 2400), RTX 4090
- 15.gen! Intel Core Ultra 9 285K +16-32GB DDR5 RAM +hűtött VRM-es Z890 lap! GAR/SZÁMLA (a Te nevedre)
- Gamer PC-Számítógép! Csere-Beszámítás! I3 14100F / RTX 3060Ti / 16GB DDR5 / 1TB SSD
- AKCIÓ! Honor 200 Lite 8GB 256GB mobiltelefon garanciával hibátlan működéssel
- Telefon felvásárlás!! Huawei P20 Lite/Huawei P20/Huawei P30 Lite/Huawei P30/Huawei P30 Pro
- Xiaomi 11T 128GB, Kártyafüggetlen, 1 Év Garanciával
- Samsung Galaxy Tab A9+ 5G 128GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
É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... 

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


