写出下列排序算法的基本思想,并写出对序列(23,12,35,47,16,25,36,19,21,16)进行排序时每一趟的结果。 PROC bbsort(VAR r: sequence; n: integer); {r是一个数组} d:=1; pos[-1]:=1; pos[1]:=n; i:=1; exchanged:= true; WHILE exchanged DO [ exchanged:= false; WHILE i<>pos[d] DO [IF (r[i]-r[i+d])*d>0 THEN [r[i]与r[i+d]交换; exchanged:=true;]; i:=i+d; ] pos[d]:=pos[d]-d; i:=pos[d]; d:=-d; ] ENDP;