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... 
-
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. -
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
Aktív témák
- LG 65QNED86A / MiniLED / 65" - 164 cm / 4K UHD / 144Hz / HDR Dolby Vision / FreeSync Premium / VRR
- Lenovo ThinkPad T14s Gen 3 i5-1245U 14" FHD+ 16GB 512GB 1 év teljeskörű garancia
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7500F 32/64GB DDR5 RTX 5060 8GB GAMER PC termékbeszámítással
- Telefon felvásárlás!! Apple iPhone SE (2016), Apple iPhone SE2 (2020), Apple iPhone SE3 (2022)
- ÁRGARANCIA!Épített KomPhone i9 14900KF 32/64GB DDR5 RAM RX 9070 XT 16GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: Laptopműhely Bt.
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 