public class MySort {
public static void main(String[] args) {
MySort sort = new MySort(); int[] arr = new int[]{ }; sort sort(arr); for(int i : arr){ System out print(i+ ); } }
public void sort(int[] targetArr){//小到大的排序
int temp = ; for(int i = ;i<targetArr length;i++){ for(int j = i;j<targetArr length;j++){
if(targetArr[i]>targetArr[j]){
///方法一 temp = targetArr[i]; targetArr[i] = targetArr[j]; targetArr[j] = temp;
//方法二: targetArr[i] = targetArr[i] + targetArr[j]; targetArr[j] = targetArr[i] targetArr[j]; targetArr[i] = targetArr[i] targetArr[j];/
//方法三 targetArr[i] = targetArr[i]^targetArr[j]; targetArr[j] = targetArr[i]^targetArr[j]; targetArr[i] = targetArr[i]^targetArr[j];
}
} } }
} 测试 //拿 位来表示吧(正规 位) Java代码
int a = b = ; a = a + b;// b = a b;// a = a b;// = System out println(a+ +b); // int c= ;// int d= ;// c=c^d;// System out println(c); d=c^d;// c=c^d;//
lishixinzhi/Article/program/Java/hx/201311/25774
for(i=0;i<argslength;i++) //从第一个元素开始
for(j=0;j<argslength;j++){
if(IntegerparseInt(args[j])>IntegerparseInt(args[j+1])){
temp = args[j];
args[j] = args[j+1];
args[j+1] = temp;
}
}
这段代码很容易理解啊,就是冒泡算法的基本思想,将待排序的元素看作是竖着排列的“气泡”,较小的元素比较轻,从而要往上浮。在冒泡排序算法中我们要对这个“气泡”序列处理若干遍。所谓一遍处理,就是自底向上检查一遍这个序列,并时刻注意两个相邻的元素的顺序是否正确。如果发现两个相邻元素的顺序不对,即“轻”的元素在下面,就交换它们的位置。显然,处理一遍之后,“最轻”的元素就浮到了最高位置;处理二遍之后,“次轻”的元素就浮到了次高位置。在作第二遍处理时,由于最高位置上的元素已是“最轻”元素,所以不必检查。一般地,第i遍处理时,不必检查第i高位置以上的元素,因为经过前面i-1遍的处理,它们已正确地排好序。
import javaioBufferedReader;
import javaioInputStreamReader;
public class MaoPaoPaiXu {
public static void main(String[] args) throws Exception {
Systemoutprintln("请输入要输入的正整数个数:");
BufferedReader br = new BufferedReader(new InputStreamReader(Systemin));
String num = brreadLine();
int len = IntegerparseInt(num);
int[] source = new int[len];
Systemoutprintln("请输入正整数,每个正整数之间用\",\"分割:");
String sourceString = brreadLine();
brclose();
String[] sourceStrs = sourceStringsplit(",");
if (sourceStrslength != len) {
Systemoutprintln("输入的正整数个数和输入的正整数数量不匹配。");
return;
}
for (int i = 0; i < sourceStrslength; i++) {
source[i] = IntegerparseInt(sourceStrs[i]);
}
//冒泡排序
int temp = 0;
for (int i = sourcelength-1; i > 0; --i) {
for (int j = 0; j < i; ++j) {
if (source[j+1]< source[j]) {
temp = source[j];
source[j] = source[j+1];
source[j+1] = temp;
}
}
}
Systemoutprintln("冒泡排序后的数组内容:");
StringBuffer sb = new StringBuffer();
for (int string : source) {
sbappend(string+",");
}
Systemerrprintln(sbtoString());
}
}
运行后的内容:
请输入要输入的正整数个数:
6
请输入正整数,每个正整数之间用","分割:
876,234,123,2,32,12
冒泡排序后的数组内容:
2,12,32,123,234,876,
以上就是关于Java冒泡排序法全部的内容,包括:Java冒泡排序法、java 冒泡程序代码注释、如何Java编写冒泡程序,要求是从键盘输入一个正整数n表示个数,然后输等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)