📄 sort2.pas
字号:
PROCEDURE sort2(n: integer;VAR ra,rb: glsarray);
(* Programs using routine SORT2 must define type
TYPE
glsarray = ARRAY [1..np] OF real;
in the main routine, with np >= n. *)
LABEL 99;
VAR
l,j,ir,i: integer;
rrb,rra: real;
BEGIN
l := (n DIV 2)+1;
ir := n;
WHILE true DO BEGIN
IF (l > 1) THEN BEGIN
l := l-1;
rra := ra[l];
rrb := rb[l]
END ELSE BEGIN
rra := ra[ir];
rrb := rb[ir];
ra[ir] := ra[1];
rb[ir] := rb[1];
ir := ir-1;
IF (ir = 1) THEN BEGIN
ra[1] := rra;
rb[1] := rrb;
GOTO 99
END
END;
i := l;
j := l+l;
WHILE (j <= ir) DO BEGIN
IF (j < ir) THEN
IF (ra[j] < ra[j+1]) THEN j := j+1;
IF (rra < ra[j]) THEN BEGIN
ra[i] := ra[j];
rb[i] := rb[j];
i := j;
j := j+j
END ELSE j := ir+1
END;
ra[i] := rra;
rb[i] := rrb
END;
99: END;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -