java10排序在2前面吗,10 冒泡排序

vc++高级编程技巧与示例,胡峪,刘静

71.2元

(需用券)

去购买 >

2ca50510818ffabc404a3d393e6871f9.png

10 冒泡排序

思路分析:

核心思想为:

使数组的当前部分(初始时为原数组)的最后一个值为最大值(升序)为或最小值(降序)

使最后一个值为最大值的具体操作为(升序):在数组的当前部分里面每次(从第一个开始)都拿前面一个与后面相相比较,若比后面的值大,就交换,直到前面一个数访问当前数组的倒数第二个元素为止,

使最后一个值为最小值的具体操作为(降序):在数组的当前部分里面每次(从第一个开始)都拿前面一个与后面相相比较,若比后面的值小就交换,直到前面一个数访问当前数组的倒数第二个元素为止,

推导过程如下所示:

int[] a={1,2,3,4,5};以a数组为例,可以得到如下所示的表(以降序为例)

0350ffbf3ca659e45b5c4e9cf032d24d.png

准备工作

//bubble sort的意思是冒泡排序

int[] a={9,8,7,6,5,4};

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

// int[] a={1,4,121,4,5,6};

System.out.println("需要排序的原数组a如下所示:");

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

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

}

System.out.println();//换行

A.升序

1.核心代码

//升序

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

for (int j = 0; j < a.length-1-i; j++) {

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

int temp=a[j];

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

a[j+1]=temp;

}

}

}

System.out.println("排序后的数组a(升序)如下所示");

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

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

}

2.运行截图

aa7ba38805fa5e35df60f6800c00a759.png

bc43964ae9188816bc7176f2349f8d9d.png

b7d310ae3197fffa87e1591c3af194ca.png

B.降序

1.核心代码:

//降序

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

for (int j = 0; j < a.length-1-i; j++) {

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

int temp=a[j];

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

a[j+1]=temp;

}

}

}

System.out.println("排序后的数组a(降序)如下所示");

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

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

}

2.运行截图

ad47ab85a910b09c863a83cfa1b04fa9.png

d93e0712d71ea97e57b52db6680864bb.png

59393eb37f3913037014a0d77ae44839.png

java 11官方入门(第8版)教材

79.84元

包邮

(需用券)

去购买 >

f0f3f55624fb396b1764d42d6df88864.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值