Sortowanie

2002-03-05 23:28
pq
0

Przepraszam za glupie pytanie z najbardziej podstawowych podstaw informatyki, ale studiowalem mocno inne zagadnienia:

Czy ktos moglby mi podeslac algorytm sortowania szybszego niz babelki (wolniejszego zreszta pewnie nie ma...). Albo w Delphi, albo w jakims pseudokodzie, albo opisowo w ludzkim jezyku. Moze byc Basic tylko blagam bez C!!!

--Pawel

Delphi6

Pozostało 580 znaków

2002-03-06 15:41
ŁF
0

Mailnij do mnie .....


Pozostało 580 znaków

2002-03-06 16:18
Skysh
0

Do mnie tesh mozesh..
--Delphi 4

Skysh The God, Your Slave

Pozostało 580 znaków

2002-03-06 16:43
pq
0

K2, chetnie mailne ale daj swoj email albo sie zarejestruj na forum, pls.--Pawel

Delphi6

Pozostało 580 znaków

2002-03-06 18:20
0

K2 [mailto:[email protected]] w dniu 6.3.2002 15:41 napisal:
Mailnij do mnie .....

Wal na forum - inny tez pewnie chcieli by wiedziec :)
Albo ja przesle cos zaraz...--Pozdrawiam!
Adam Boduch
www.4programmers.net

Pozostało 580 znaków

2002-03-06 19:50
Niezarejestowany
0

ja wymyslilem cos takiego (pascal);

uses crt;

var pomieszane,posortowane:array[1..100]of integer; { np.}
x,y,z:integer;

begin
randomize;
x:=0;
repeat
x:=x+1;
pomieszane[x]:=1+random(100); {no, musialem jakos pomieszac}
until x=100;
y:=0;
z:=0;
repeat
z:=z+1;
for x:=1 to 100 do
begin
if pomieszane[x]=z then
begin
y:=y+1;
posortowane[y]:=pomieszane[x];
end;
end;
x:=0;
until z=100;
for x:=1 to 100 do {Sprawdzenie (jak ktos nie wierzy)}
begin
write(x,'=',posortowane[x],' ');
end;
end.

ten program bedzie sortowal elementy tablicy o nazwaie 'pomieszane' w sposob rosnacy czyli
posortowane[1]:=najmniejszy element tablicy pomieszane

                         K_asm_il

Pozostało 580 znaków

2002-03-07 14:25
Skysh
0

Co do algorytmu wyzej, to ja moze sie myle, ale jak bede sortowal tablice [1..10] typu integer, to przez proste bombelki wykonam tylko 100 operacjii, a tamtym algorytmem okolo 64000 od kwadratu. Nie tak??
Chyba cos podobnego fachowo nazywa sie sortowaniem przez zliczanie, ale z zastrzezeniem, ze to dziala tylko jak jest maly zakres w porownaniu do ilsci liczb do posortowania.--Delphi 4

Skysh The God, Your Slave

Pozostało 580 znaków

2002-03-07 15:26
Niezarejestowany
0

A moze by tak quicksort?

var tab : array [1..30000] of Integer;
li : Integer;

Function Podziel(l,p : Integer):Integer;
var x,i,j,tmp : Integer;
Begin
x:=Random(p-l+1)+l;
tmp:=tab[l];
tab[l]:=tab[x];
tab[x]:=tmp;
x:=tab[l];
i:=l-1;
j:=p+1;
while TRUE do
begin
repeat
inc(i);
until tab[i]&gt=x;
repeat
dec(j);
until tab[j]&lt=x;
if i&ltj then
begin
tmp:=tab[i];
tab[i]:=tab[j];
tab[j]:=tmp;
end else
begin Podziel:=j; Exit; end;
end;
End;

Procedure QSort (l,p : Integer);
var q : Integer;
Begin
if l&ltp then
begin
q:=podziel(l,p);
QSort(l,q);
QSort(q+1,p);
end;
End;

BEGIN
for li:=1 to 30000 do
tab[li]:=30001-li;

QSort (1,30000);
END.

sorrki za objetosc...
pozdroowka dla forumowiczow - &y

Pozostało 580 znaków

2002-03-07 15:27
pq
0

Czy nazwa QuickSort oznacza ze jest to najszybszy znany sposob sortowania?--Pawel

Delphi6

Pozostało 580 znaków

2002-03-07 18:04
0

Czy nazwa QuickSort oznacza ze jest to najszybszy znany sposob sortowania?
&gt
&gt--

Tak, jeden z najszybszych.--Pozdrawiam!
Adam Boduch
www.4programmers.net

Pozostało 580 znaków

2002-03-07 18:21
Niezarejestowany
0

Oj skyhs! Widac ze nie piszesz w pascalu. Po pierwsze operacja bedzie wtedy gdy element tablicy
pomieszanej bedzie odpowiadal 'z'. Sama petla hmm... Nie sprawdzalem ile to trwa.
Na moim kompie posortowanie tej 100 elementowej tablicy trwalo ulamek setnej sekundy.
A w ogóle sprawdziles jak dziala. Zrob lepszy i szybszy w pascalu.

A tak w ogole do ktorej chodzisz klasy?

                          K_asm_il

Pozostało 580 znaków

Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0