序列( )可能是第一趟冒泡排序后的结果。A.40 10 20 30 70 50

admin2022-08-02  39

问题 序列( )可能是第一趟冒泡排序后的结果。A.40 10 20 30 70 50 60B.20 30 10 40 70 50 60C.30 10 40 20 70 60 50D.20 30 10 40 60 50 70

选项 A.40 10 20 30 70 50 60
B.20 30 10 40 70 50 60
C.30 10 40 20 70 60 50
D.20 30 10 40 60 50 70

答案 D

解析 本题考查数据结构与算法基础知识。
n个记录进行冒泡排序的方法是:首先将第一个记录的关键字和第二个记录的关键字进行比较,若为逆序,则交换两个记录的值,然后比较第二个记录和第三个记录的关键字,依此类推,直至第n-1个记录和第n个记录的关键字比较完为止。上述过程称作一趟冒泡排序,其结果是关键字最大的记录被交换到第n个位置。然后进行第二趟冒泡排序,对前n-1个记录进行同样的操作,其结果是关键字次大的记录被交换到第n-1个位置。当进行完第n-1趟时,所有记录有序排列。
显然,第一趟冒泡排序后最大元素会交换至序列末端。
转载请注明原文地址:https://tihaiku.com/congyezige/2425090.html

最新回复(0)