Sorting algorithms/Insertion sort: Difference between revisions

Content added Content deleted
Line 453: Line 453:
<lang pli>INSSORT: PROCEDURE (A,N);
<lang pli>INSSORT: PROCEDURE (A,N);
DCL (A(*)) FIXED BIN(31),
DCL (A(*)) FIXED BIN(31),
N FIXED BIN(31) NONASGN;
N FIXED BIN(31) NONASSIGNABLE;
DCL (I,J,V) FIXED BIN(31);
DCL (I,J,V) FIXED BIN(31);
DO I=2 TO N;
DO I=2 TO N;
V=A(I);
V=A(I);
J=I-1;
J=I-1;
DO WHILE (J > 0 & A(J) > V);
DO WHILE (J > 0);
A(J+1)=A(J); J-=1;
if A(J) <= V then leave;
A(J+1)=A(J); J=J-1;
END;
END;
A(J+1)=V;
A(J+1)=V;