网站建设资讯

NEWS

网站建设资讯

排序java代码,快速排序java代码

用java写个冒泡排序?

冒泡排序算法:

成都创新互联专注于许昌企业网站建设,成都响应式网站建设公司,商城建设。许昌网站建设公司,为许昌等地区提供建站服务。全流程专业公司,专业设计,全程项目跟踪,成都创新互联专业和态度为您提供的服务

int类型的数组:3 1 6 2 5

第一次循环:

1 3 6 2 5

1 3 6 2 5

1 3 2 6 5

1 3 2 5 6

第二次循环:

1 3 2 5

1 2 3 5

1 2 3 5

第三次循环:

1 2 3

1 2 3

。。。

算法:取出最大的放在最后,下次就不用比较最后一个了。*/

public class BubbleSort{

public static void main(String[] args){

int[] a = {3,1,6,2,5};

//开始排序

for(int i=a.length-1;i0;i--){

for(int j=0;ji;j++){

if(a[j]a[j+1]){

//交换位置

int temp;

temp = a[j];

a[j] = a[j+1];

a[j+1] = temp;

}

}

}

//遍历

for(int i=0;ia.length;i++){

System.out.println(a[i]);

}

}

}

java实现冒泡排序

你这样写,相当于只冒了一次泡,把最大的一个数,也就是最后一个数,找出来了,冒泡排序是要for循环里在嵌套一个for循环才能做出来的,外面的for循环控制冒泡多少次,里面的循环找出每次的最大值。你这样写少了外面的那个for循环,相当于只找了一次最大值。

java语言:对包含5个元素的一维数组用冒泡法进行排序,编程实现并输出排序后的结果。

代码:

public class test {

private static void sort(Integer arr[], int n) {

if (n = 1) return;       //如果只有一个元素就不用排序了

for (int i = 0; i n; ++i) {

// 提前退出冒泡循环的标志位,即一次比较中没有交换任何元素,这个数组就已经是有序的了

boolean flag = false;

for (int j = 0; j n - i - 1; ++j) {        //此处你可能会疑问的jn-i-1,因为冒泡是把每轮循环中较大的数飘到后面,

// 数组下标又是从0开始的,i下标后面已经排序的个数就得多减1,总结就是i增多少,j的循环位置减多少

if (arr[j] arr[j + 1]) {        //即这两个相邻的数是逆序的,交换

int temp = arr[j];

arr[j] = arr[j + 1];

arr[j + 1] = temp;

flag = true;

}

}

if (!flag) break;//没有数据交换,数组已经有序,退出排序

}

}

public static void main(String[] args) {

Integer arr[] = {2, 6, 3, 67, 54};

sort(arr, arr.length);

System.out.println("冒泡排序后的数组为");

for (Integer i : arr) {

System.out.println(i);

}

}

}

求冒泡排序的java代码

方法一: package basic.javastu; public class NumberTest {

/** * 实现冒泡程序1 */ public static void main(String[] args) { // TODO Auto-generated method stub

int[] numb=new int[]{3,42,57,1,32,24};

int len=numb.length;

int i,j;

int temp;

System.out.println("排序前的数组各个值:");

for(i=0;ilen;i++)

{

System.out.print(numb[i]+"\t");

}

System.out.println("\n");

for(i=1;i=len;i++)

{

for(j=len-1;j=1;j--)

{

if(numb[j]numb[j-1])

{

temp=numb[j];

numb[j]=numb[j-1];

numb[j-1]=temp;

}

}

}

System.out.println("排序后的数组各个值:");

for(i=0;ilen;i++)

{

System.out.print(numb[i]+"\t");

}

}

}

方法二: package basic.javastu; public class NumberTest2 {

/** * 实现冒泡程序2 */ public static void main(String[] args) { // TODO Auto-generated method stub

int[] numb=new int[]{3,42,57,1,32,24};

int leng=numb.length;

System.out.println("排序前的数组各个值:");

for(int i=0;ileng;i++)

{

System.out.print(numb[i]+"\t");

}

System.out.println("\n");

swap(numb);

System.out.println("数组排序后:"); for(int i=0;ileng;i++)

{

System.out.print(numb[i]+"\t");

} }

private static int[] swap(int[] numb) { int n2[]=numb; int len=n2.length; int i,j; int temp; for(i=1;i=len;i++)

{

for(j=len-1;j=1;j--)

{

if(n2[j]n2[j-1])

{

temp=n2[j];

n2[j]=n2[j-1];

n2[j-1]=temp;

}

}

} return n2; } }

方法三: package basic.javastu; public class NumberTest3 {

/** * 实现冒泡程序2 */ public static void main(String[] args) { // TODO Auto-generated method stub

int[] numb=new int[]{3,42,57,1,32,24};

int leng=numb.length;

System.out.println("排序前的数组各个值:");

for(int i=0;ileng;i++)

{

System.out.print(numb[i]+"\t");

}

System.out.println("\n");

swap(numb);

System.out.println("数组排序后:"); for(int i=0;ileng;i++)

{

System.out.print(numb[i]+"\t");

} }

private static void swap(int[] numb) { int len=numb.length; int i,j; int temp; for(i=1;i=len;i++)

{

for(j=len-1;j=1;j--)

{

if(numb[j]numb[j-1])

{

temp=numb[j];

numb[j]=numb[j-1];

numb[j-1]=temp;

}

}

} } }

用java语言用冒泡排序如何写代码啊,求大神,求仔细代码。

纯手工,随意写的,希望对你有帮助!!

public class MaoPao{

//定义一个整形数组

int[] a = new int[10];

//中间数

int flag = 0;

//g给数组赋值

a = {14,12,21,52,36,78,45,31,33,98};

//判断

for(int i=0;ia.length;i++){

for(int j=i+1;ia.length;i++){

//交换位置,最大的放第一个

if(a[i]a[j]){

flag = a[i];

a[i] = a[j];

a[j] = a[i];

}

}

}

//输出数组

for(int i=0;ia.length;i++){

System.out.println(a[i]);

}

}

冒泡法排序,java代码 排序1 8 5 2 4 9

public class Test {

public static void main(String[] args) {

int[] a = {1, 8, 5, 2, 4, 9};

//冒泡排序

for (int k = 0; k  a.length - 1; k++) {

for (int j = k + 1; j  a.length; j++) { // 升序把改成

if (a[k]  a[j]) {

int temp = a[k];

a[k] = a[j];

a[j] = temp;

}

}

}

System.out.println("排序后: ");

for(int i = 0; i  a.length; i++){

System.out.print(a[i] + "  ");

}

}

}


文章题目:排序java代码,快速排序java代码
分享地址:http://cdweb.net/article/heejpo.html