Java字符串04-冒泡排序
冒泡排序:
package doudou; public class test_maopao { public static void main(String[] args) { int[] before = { 10, 24, 34, 9, 15, 6, 55 }; System.out.println(before);//输出的是地址 maopao(before); } public static int[] maopao(int[] before) {
/*
*
*
思路 1.先判断是否为空,为空的话原样返回
2.不会空的话,求长度 ,相邻2个字符做比较
第一轮-0:
第一次:第一位和第二位比较 如果第一位>第二位,交换,否则不交换
第二次: 第二位和第三位交换 如果第二位>第三位,交换,否则不交换
依次类推 直到最后 倒数第二位和倒数第一位比较,退出。(第一轮结束,将最大的数冒泡冒泡到最后一位!!!)
进入第二轮-1的循环:
第二轮结束,将次最大的数冒泡到倒数第二位。(第二轮结束,将次最大的数冒泡冒泡到最后二位!!!且交换比较的截止位置是length-1-1)
依次。。。
*
*
*/
if (before.length <= 1) { return before; } else if (before.length > 1) { int before_length = before.length;//长度为7 for (int i = 0; i < before_length - 1; i++) {//外层循环几次 能使数组按照从小到大排序 for(int j=0;j<before_length-i-1;j++)//交换 第一轮将最大的数放在最后,... if (before[j] > before[j+1]) { // 交换 int temp = 0; temp = before[j + 1]; before[j + 1] = before[j]; before[j] = temp; } } }
for(int i = 0; i < before.length; i++) { System.out.print(before[i]+ " "); } return before; } }