Bubble sort/fi
Kuplalajittelu (Bubble sort) on yksinkertainen lajittelualgoritmi.
Ominaisuudet
- Hyvin hidas
- Soveltuu ainoastaa pienen määrän lajitteluun
- Nopea ainoastaan silloin kuin aineisto on melkein lajiteltu
Unit UBubbleSort
unit UBubbleSort;
interface
type
// data type
TItemBubbleSort=integer;
procedure BubbleSort( var a: array of TItemBubbleSort );
implementation
procedure swap( var a, b:TItemBubbleSort );
var
temp : TItemBubbleSort;
begin
temp := a;
a := b;
b := temp;
end;
procedure BubbleSort( var a: array of TItemBubbleSort );
var
n, newn, i:integer;
begin
n := high( a );
repeat
newn := 0;
for i := 1 to n do
begin
if a[ i - 1 ] > a[ i ] then
begin
swap( a[ i - 1 ], a[ i ]);
newn := i ;
end;
end ;
n := newn;
until n = 0;
end;
end.Esimerkki käytöstä
uses
UBubbleSort
...
var
a: array[0..100] of integer;
begin
...
BubbleSort(a);
...Katso myös
- [https://www.youtube.com/watch?v=DXO-nqATduU| COMP1 Revise & Learn : Bubble Sort]
From the Free Pascal wiki, page "Bubble sort/fi", as it stood on 2020-02-10 after a change by Trev, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.