java冒泡排序法代码
没财富值了--
JAVA运行输入一冒泡排序
输入二九九乘法表
输入三螺旋矩阵
01 02 03 04 05
16 17 18 19 06
15 24 25 20 07
14 23 22 21 08
13 12 11 10 09
OK吗? 展开
冒泡排序是比较经典的排序算法。代码如下:
for(int i=1;i<arr.length;i++){
for(int j=1;j<arr.length-i;j++){
//交换位置
}
拓展资料:
原理:比较两个相邻的元素,将值大的元素交换至右端。
思路:依次比较相邻的两个数,将小数放在前面,大数放在后面。即在第一趟:首先比较第1个和第2个数,将小数放前,大数放后。然后比较第2个数和第3个数,将小数放前,大数放后,如此继续,直至比较最后两个数,将小数放前,大数放后。重复第一趟步骤,直至全部排序完成。
第一趟比较完成后,最后一个数一定是数组中最大的一个数,所以第二趟比较的时候最后一个数不参与比较;
第二趟比较完成后,倒数第二个数也一定是数组中第二大的数,所以第三趟比较的时候最后两个数不参与比较;
依次类推,每一趟比较次数-1;
……
举例说明:要排序数组:int[] arr={6,3,8,2,9,1};
for(int i=1;i<arr.length;i++){
for(int j=1;j<arr.length-i;j++){
//交换位置
}
参考资料:冒泡排序原理
我们可以创建一个java程序来使用冒泡排序对数组元素进行排序。冒泡排序算法被称为最简单的排序算法。
在冒泡排序算法中,数组从第一个元素遍历到最后一个元素。这里,当前元素与下一个元素进行比较。如果当前元素大于下一个元素,则它被交换。
公共类 BubbleSortExample {
static void bubbleSort(int [] arr){
int n = arr.length;
int temp = 0 ;
for (int i = 0 ; i <n; i ++){
for (int j = 1 ; j <(ni); j ++){
if (arr [j- 1 ]> arr [j]){
//交换元素
temp = arr [j- 1 ];
arr [j- 1 ] = arr [j];
arr [j] = temp;
}
}
}
}
public static void main(String [] args){
INT ARR [] = { 3 ,60 ,35 ,2 ,45 ,320 ,5 };
System.out.println(“Bubble Sort之前的数组” );
for (int i = 0 ; i <arr.length; i ++){
System.out.print(arr [i] + “” );
}
的System.out.println();
冒泡(ARR); //使用冒泡排序来排序数组元素
System.out.println(“冒泡排序后的数组” );
for (int i = 0 ; i <arr.length; i ++){
System.out.print(arr [i] + “” );
}
}
}
数组在排序之前3 60 35 2 45 320 5
数组冒泡排序2 3 5 35 45 60 320
输出:
Java数据结构与算法,冒泡排序法,你学会了吗
2014-01-03
int a[] = {1,2,3,4,5};
for(int i=0;i<a.length-1;i++){
for(int j=i+1;j<a.length;j++){
if(a[i]>a[j]){
int k = a[i];
a[i] = a[j];
a[j] = k;
}
}
}
这是是从小到大的排序
public class $ {
public static void main(String[] args) {
int[] arr = { 1, 3, 5, 7, 9, 2, 4, 6, 8, 0 };
for (int i = 0; i < arr.length; i++) {
for (int j = i; j < arr.length; j++) {
if (arr[i] > arr[j]) {
int tmp = arr[i];
arr[i] = arr[j];
arr[j] = tmp;
}
}
}
System.out.println("the max is " + arr[arr.length - 1]);
}
}
能继续问别的吗
建议你再开个问题,回复的太多,有可能被和谐
你在开个问题,现在的回复内容有限制,或者你留个联系方式给我。
第三个问题我写过