Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
|
|
@ -0,0 +1,33 @@
|
|||
int Array;
|
||||
|
||||
func CircleSort(Lo, Hi, Swaps);
|
||||
int Lo, Hi, Swaps;
|
||||
int Low, High, Mid, T;
|
||||
[if Lo = Hi then return Swaps;
|
||||
Low:= Lo;
|
||||
High:= Hi;
|
||||
Mid:= (Hi-Lo)/2;
|
||||
while Lo < Hi do
|
||||
[if Array(Lo) > Array(Hi) then
|
||||
[T:= Array(Lo); Array(Lo):= Array(Hi); Array(Hi):= T;
|
||||
Swaps:= Swaps+1;
|
||||
];
|
||||
Lo:= Lo+1;
|
||||
Hi:= Hi-1;
|
||||
];
|
||||
if Lo = Hi then
|
||||
if Array(Lo) > Array(Hi+1) then
|
||||
[T:= Array(Lo); Array(Lo):= Array(Hi+1); Array(Hi+1):= T;
|
||||
Swaps:= Swaps+1;
|
||||
];
|
||||
Swaps:= CircleSort(Low, Low+Mid, Swaps);
|
||||
Swaps:= CircleSort(Low+Mid+1, High, Swaps);
|
||||
return Swaps;
|
||||
];
|
||||
|
||||
int I;
|
||||
[Array:= [5, -1, 101, -4, 0, 1, 8, 6, 2, 3];
|
||||
while CircleSort(0, 10-1, 0) # 0 do [];
|
||||
for I:= 0 to 10-1 do
|
||||
[IntOut(0, Array(I)); ChOut(0, ^ )];
|
||||
]
|
||||
Loading…
Add table
Add a link
Reference in a new issue