针对实例{3,7,2,4,5,3}分别用选择排序和冒泡排序进行排序,并写出详细过程(3分)
时间: 2023-10-26 08:06:40 浏览: 64
选择、冒泡排序
选择排序过程:
1. 从序列中找到最小的元素,将其放到序列的起始位置。
2. 从剩余未排序的序列中找到最小的元素,将其放到已排序序列的末尾。
3. 重复第二步,直到所有元素都已排序。
对于给定的序列{3,7,2,4,5,3},选择排序的过程如下:
第一轮:找到最小元素2,将其与第一个元素3交换位置,序列变为{2,7,3,4,5,3};
第二轮:找到最小元素3,将其与第三个元素3交换位置,序列变为{2,3,7,4,5,3};
第三轮:找到最小元素3,将其与最后一个元素5交换位置,序列变为{2,3,3,4,5,7};
第四轮:找到最小元素4,将其与第四个元素4交换位置,序列变为{2,3,3,4,5,7};
第五轮:找到最小元素5,将其与第五个元素5交换位置,序列变为{2,3,3,4,5,7};
第六轮:找到最小元素7,序列已经有序,排序结束。
冒泡排序过程:
1. 从序列的起始位置开始,对相邻的两个元素进行比较,如果前面的元素大于后面的元素,则交换位置。
2. 对整个序列重复以上步骤,直到没有任何一对元素需要交换位置为止。
对于给定的序列{3,7,2,4,5,3},冒泡排序的过程如下:
第一轮:比较3和7,3比7小,交换位置,序列变为{7,3,2,4,5,3};比较7和2,7比2大,不交换位置,序列不变;比较7和4,7比4大,不交换位置,序列不变;比较7和5,7比5大,不交换位置,序列不变;比较7和3,7比3大,交换位置,序列变为{3,7,2,4,5,3};
第二轮:比较3和7,3比7小,序列不变;比较7和2,7比2大,交换位置,序列变为{3,2,7,4,5,3};比较7和4,7比4大,交换位置,序列变为{3,2,4,7,5,3};比较7和5,7比5大,交换位置,序列变为{3,2,4,5,7,3};比较7和3,7比3大,交换位置,序列变为{3,2,4,5,3,7};
第三轮:比较3和2,3比2大,交换位置,序列变为{2,3,4,5,3,7};比较3和4,3比4小,序列不变;比较4和5,4比5小,交换位置,序列变为{2,3,4,3,5,7};比较5和3,5比3大,交换位置,序列变为{2,3,4,3,7,5};
第四轮:比较2和3,2比3小,序列不变;比较3和4,3比4小,序列不变;比较4和3,4比3大,交换位置,序列变为{2,3,3,4,7,5};比较7和5,7比5大,交换位置,序列变为{2,3,3,4,5,7};
第五轮:比较2和3,2比3小,序列不变;比较3和3,元素相同,序列不变;比较4和3,4比3大,交换位置,序列变为{2,3,3,3,5,7};比较5和4,5比4大,交换位置,序列变为{2,3,3,3,7,5};
第六轮:比较2和3,2比3小,序列不变;比较3和3,元素相同,序列不变;比较3和5,3比5小,序列不变;比较7和5,7比5大,交换位置,序列变为{2,3,3,3,5,7};
最终序列为{2,3,3,3,5,7},排序结束。
阅读全文