JavaSE 学习参考:数组排序

数组排序是数组操作常用操作之一,通过排序将数组中原来顺序按照升序(从小到大)或降序(从大到小)重新组织。数组排序算法很多,最常用的是冒泡排序。本文演示冒泡排序算法,下面以升序排序为例讲解。

冒泡排序可以理解为需要若干趟相邻元素交换,每趟交换的结果是最大元素排在最后。以下面包含10个元素数组为例。

5

7

2

9

4

0

8

6

3

1

每一趟相邻元素交换,原则是前者大于后者,则将两者交换,否则不动。

第一趟:10个元素相邻比较需要9次。最终9排在最后

5

7

2

9

4

0

8

6

3

1

5

7

2

9

4

0

8

6

3

1

5

2

7

9

4

0

8

6

3

1

5

2

7

9

4

0

8

6

3

1

5

2

7

4

9

0

8

6

3

1

5

2

7

4

0

9

8

6

3

1

5

2

7

4

0

8

9

6

3

1

5

2

7

4

0

8

6

9

3

1

5

2

7

4

0

8

6

3

9

1

5

2

7

4

0

8

6

3

1

9

第二趟:前9个相邻元素参与比较(因为最后一个已是最大的了,不需要参与)需要8次,最终8排在9之前。

依次类推,每趟相邻元素比较得互剩余元素最大元素放上趟排序得到最大元素之前,因此需要9次。

代码如下:

publicstaticvoidmain(String[]args) {

int[]arr={5,7,2,9,4,0,8,6,3,1};

for(inti=0;i

for(intj=i;j

if(arr[j]>arr[j+1]){

intt=arr[j];

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

arr[j+1]=t;

}

}

}

for(inti=0;i

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

}

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 出处:东汉.班固《汉书.魏相传》 释义:励:振作。振奋精神,力求治理好国家。 公元前74年,汉宣帝刘洵即位...
    宸曌媚娘阅读 725评论 0 0
  • 2013年,我怀孕了,这是我的第二个孩子。她来的太突然,让我有点措手不及,也让我很无奈。这两年,我和老公关系...
    渡客浮生阅读 459评论 0 1
  • 很难过,是因为我们总是会在生活里左右为难…… 下雨了,心情好烦躁,很努力的想把一件事情做好,但有时候就会发现...
    叉子xi阅读 436评论 0 0
  • 夏日的午后 空气弥漫慵懒的气息 景物蒙着梦幻的薄纱 不真实的美丽 眯着眼睛 看时光流逝 听寂寞有声 呢喃着回忆 蜻...
    萧淮阅读 380评论 2 0

友情链接更多精彩内容