问题 问答题

[说明] 下面的流程图实现了正整数序列{K(1),K(2),…,K(n)}的重排,得到的新序列中,比K(1)小的数都在K(1)的左侧,比K(1)大的数都在K(1)的右侧。以n=6为例,序列{12,2,9,13,21,8}的重排过程为:{12,2,9,13,21,8} →{2,12,9,13,21,8} →{9,2,12,13,21,8} →{8,9,2,12,13,21}[流程图]

答案

参考答案:

解析:(1) K(s)<K(t) (2) K(s) (3) i←i-1 (4) t←t+1 (5) s←s+1[考点分析] 考查算法的流程图表示。 算法中变量K(t)始终代表原始序列中的K(1)值,t则代表它在当前序列中的位置编号,初始值为1; k(s)代表待比较的数。算法首先拿K(t)和其后的数做比较,若K(s)比K(t)小,则K(s)移至序列的最左侧,同时顺次把第i,i<s位的元素向右移一位。让s自增1,重复这一步骤,直至到达序列末端(即s=n)为止。

配伍题
单项选择题