本文共 1363 字,大约阅读时间需要 4 分钟。
Write a program of the Bubble Sort algorithm which sorts a sequence A in ascending order. The algorithm should be based on the following pseudocode:
BubbleSort(A)1 for i = 0 to A.length-12 for j = A.length-1 downto i+13 if A[j] < A[j-1]4 swap A[j] and A[j-1]
Note that, indices for array elements are based on 0-origin.
Your program should also print the number of swap operations defined in line 4 of the pseudocode.
The first line of the input includes an integer N, the number of elements in the sequence.
In the second line, N elements of the sequence are given separated by spaces characters.
The output consists of 2 lines.
In the first line, please print the sorted sequence. Two contiguous elements of the sequence should be separated by a space character.
In the second line, please print the number of swap operations.
1 ≤ N ≤ 100
55 3 2 4 1
1 2 3 4 58
65 2 4 6 1 3
1 2 3 4 5 69
代码如下:
#include#include #include #include using namespace std;const int maxn=105;int n;int a[maxn];void BubbleSort (){ int sum=0; for (int i=0;i a[j+1]) { int temp=a[j]; a[j]=a[j+1]; a[j+1]=temp; sum++; } for (int i=0;i
转载地址:http://ppaen.baihongyu.com/