您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 招聘面试 > 黑马程序员JavaEE基础-冒泡排序
黑马程序员济南中心编著黑马程序员JavaEE基础-冒泡排序今天给大家详细讲解一个案例:数组冒泡排序。具体是这样的:有一个数组int[]arr={24,69,80,57,13};把这个数组按从大到小的顺序排列。我们冒泡排序的思路是这样的:从头开始两两比较,也就是0索引和1索引的元素比较,如果1索引比较大就交换位置,然后1索引和2索引元素比较,以此类推。大的数组就像水里的泡泡一样,越接近水面气泡越大。好的,让我们画几个泡泡吧!黑马程序员济南中心编著这是数组原来的样子,我们按照数字的大小画了泡泡。一个泡泡从水里冒出到水面,随着压强的减小,气泡是越来越大的,所以我们这个看着就不太对啦。我们开始排序吧。[Java]纯文本查看复制代码?12for(inti=0;iarr.length-1;i++){//外循环只需要比较arr.length-1次就可以了for(intj=0;jarr.length-1-i;j++){//-1为了防止索引越界,-i为了提高效率(后面排好序的就不比较了)黑马程序员济南中心编著3456789if(arr[j]arr[j+1]){//j元素跟j+1比较inttemp=arr[j];arr[j]=arr[j+1];arr[j+1]=temp;}}}第一次比较:24和69比较-交换,24和80比较-交换,24和57比较-交换,24和13比较-不交换,因此第一次遍历之后顺序为:黑马程序员济南中心编著我们发现13、24、57的顺序已经排好。接下来我们继续分析排序步骤:69和80比较-交换,69和57比较-不交换,57和24比较-不交换,24和13比较-不交换。至此我们就排好啦,通过图片是不是很直观就明白了冒泡排序的过程?哈哈~
本文标题:黑马程序员JavaEE基础-冒泡排序
链接地址:https://www.777doc.com/doc-7634728 .html