#12298. 冒泡排序
冒泡排序
冒泡排序
编写一个冒泡排序算法程序,该程序按升序对序列 A 进行排序。该算法应基于以下伪代码:
BubbleSort(A)
1 for i = 0 to A.length-1
2 for j = A.length-1 downto i+1
3 if A[j] < A[j-1]
4 swap A[j] and A[j-1]
请注意,数组元素的索引基于 0-origin。
程序还应打印伪代码第 4 行中定义的交换作数。
输入
输入的第一行包括一个整数 N,即序列中的元素数。
在第二行中,序列的 N 个元素由空格字符分隔。
输出
输出由 2 行组成。
在第一行中,请打印排序后的序列。序列的两个连续元素应用空格字符分隔。
在第二行中,请打印交换作的次数。
约束
1 ≤ N ≤ 100
样本输入 1
5
5 3 2 4 1
示例输出 1
1 2 3 4 5
8
样本输入 2
6
5 2 4 6 1 3
示例输出 2
1 2 3 4 5 6
9
注意 解释
例如样例2的输出
1 2 3 4 5 6(6的后面没有空格)所以你需要思考
如果在中间保留空格,
同时在最后输出的时候不存在空格,
1空格2空格3空格4空格5空格6注意后面没有空格!