冒泡排序有几种写法(冒泡排序的简单例子)
在生活中,很多人可能想了解和弄清楚几种冒泡排序写法的相关问题?那么关于冒泡排序有几种写法的答案我来给大家详细解答下。
第一种 写法:
int score[] = { 67, 50, 75, 34, 89, 90, 12, 10 };
for (int i = 0; i < score.length-1; i++) { // 最多做n-1趟排序
for (int j = i; j < score.length; j++) { // 对当前无序区间score[0......length-i-1]进行排序(j的范围很关键,这个范围是在逐步缩小的)
if (score[i] > score[j ]) { // 把小的值交换到前面
int temp = score[i];
score[i] = score[j];
score[j] = temp;
}
}
}
for (int i = 0; i < score.length; i++) {
System.out.print(score[i] + &34;);
}
第二种写法:int score[] = { 67, 50, 75, 34, 89, 90, 12, 10 };
for (int i = 0; i < score.length; i++) { // 最多做n-1趟排序
//此处变化
for (int j = i+1; j < score.length; j++) { // 对当前无序区间score[0......length-i-1]进行排序(j的范围很关键,这个范围是在逐步缩小的)
if (score[i] > score[j ]) { // 把小的值交换到前面
int temp = score[i];
score[i] = score[j];
score[j] = temp;
}
}
}
for (int i = 0; i < score.length; i++) {
System.out.print(score[i] + &34;);
}
第三种写法:int score[] = { 67, 50, 75, 34, 89, 90, 12, 10 };
for (int i = 0; i < score.length-1; i++) { // 最多做n-1趟排序
for (int j = 0; j < score.length-1-i; j++) { // 对当前无序区间score[0......length-i-1]进行排序(j的范围很关键,这个范围是在逐步缩小的)
//此处的变化
if (score[j] > score[j+1 ]) { // 把小的值交换到前面
int temp = score[j];
score[j] = score[j+1];
score[j+1] = temp;
}
}
}
for (int i = 0; i < score.length; i++) {
System.out.print(score[i] + &34;);
}
}
温馨提示:通过以上关于几种冒泡排序写法内容介绍后,相信大家有新的了解,更希望可以对你有所帮助。