Sorting algorithms/Comb sort: Difference between revisions

no edit summary
No edit summary
Line 1,151:
on string : "qwerty"
with op = &null: "eqrtwy" (0 ms)</pre>
 
=={{header|IS-BASIC}}==
<lang IS-BASIC>100 PROGRAM "CombSrt.bas"
110 RANDOMIZE
120 LET N=20 ! Number of elements
130 NUMERIC ARRAY(1 TO N)
140 CALL INIT(ARRAY)
150 CALL WRITE(ARRAY)
160 CALL COMBSORT(ARRAY)
170 CALL WRITE(ARRAY)
180 DEF INIT(REF A)
190 FOR I=LBOUND(A) TO UBOUND(A)
200 LET A(I)=RND(N)+1
210 NEXT
220 END DEF
230 DEF WRITE(REF A)
240 FOR I=LBOUND(A) TO UBOUND(A)
250 PRINT A(I);
260 NEXT
270 PRINT
280 END DEF
290 DEF COMBSORT(REF A)
300 LET GAP=N:LET SW=1
310 DO WHILE GAP>1 OR SW
320 LET GAP=MAX(INT(GAP/1.3),1)
330 LET SW=0
340 FOR I=1 TO N-GAP
350 IF A(I)>A(I+GAP) THEN
360 LET T=A(I):LET A(I)=A(I+GAP):LET A(I+GAP)=T
370 LET SW=1
380 END IF
390 NEXT
400 LOOP
410 END DEF</lang>
 
=={{header|J}}==
Anonymous user