博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[javaSE] 数组(排序-冒泡排序)
阅读量:6985 次
发布时间:2019-06-27

本文共 1662 字,大约阅读时间需要 5 分钟。

两层嵌套循环,外层控制循环次数,内层循环进行比较

for(int x=0;x
arr[y+1]){ } } }

 

此时的代码有问题,内层循环多比较了已经排好序的部分,都在最后面,需要去掉

for(int x=0;x
arr[y+1]){ } } }

 

此时的代码有问题,内层循环最后一个元素,无法和它后面的比较,应该去掉

for(int x=0;x
arr[y+1]){ } } }

 

 

判断完后,两个变量交换位置,利用第三方变量

for(int x=0;x
arr[y+1]){ int temp=arr[y]; arr[y]=arr[y+1]; arr[y+1]=temp; } } }

 

java版:

public class ArrayDemo {    /**     * @param args     */    public static void main(String[] args) {        int[] arr=new int[]{2,5,4,1};        int[] newArr=bubbleSort(arr);        for(int x:newArr){            System.out.print(x);        }    }    /**     * 冒泡排序(正序)     * @param arr     * @return     */    public static int[] bubbleSort(int[] arr){        for(int x=0;x
arr[y+1]){ int temp=arr[y]; arr[y]=arr[y+1]; arr[y+1]=temp; } } } return arr; }}

PHP版:

1 [1] => 2 [2] => 4 [3] => 5 ) } /** * 冒泡排序(正序) * @param arr * @return */ public static function bubbleSort($arr){ for($x=0;$x
$arr[$y+1]){ $temp=$arr[$y]; $arr[$y]=$arr[$y+1]; $arr[$y+1]=$temp; } } } return $arr; }}ArrayDemo::main();

 

 

选择排序和冒泡排序性能都很低,提高性能的方法,当需要换位置的时候,先不换,先把需要换位置的角标放到栈内存中,等最后一次性在堆内存中交换

排序中最快的是 希尔排序

转载地址:http://xcqpl.baihongyu.com/

你可能感兴趣的文章
MVC结构
查看>>
隐藏字
查看>>
js将long日期格式转换为标准日期格式
查看>>
Rafy 领域实体框架演示(4) - 使用本地文件型数据库 SQLCE 绿色部署
查看>>
2014第11周日
查看>>
MySQL 指定数据库字符集的 3 种方法。
查看>>
rabbitmq 介绍
查看>>
Django比较相等或者不相等的模板语法ifequal / ifnotequal
查看>>
OpenCV中phase函数计算方向场
查看>>
Rafy 框架 - 幽灵插件(假删除)
查看>>
JAVA之Mybatis基础入门二 -- 新增、更新、删除
查看>>
java获取数据库的列名,类型等信息
查看>>
专治选择困难症:Mate 10 Pro和P20 Pro之间如何选?
查看>>
瑞幸咖啡将冲刺上半年上市:叫板星巴克 已任命首席财务官
查看>>
央视主持人张羽加盟今日头条母公司字节跳动 出任副总裁
查看>>
年终盘点篇:2018云中数据管理趋势预测
查看>>
内容电商崛起背后:这家企业瞄准短视频 靠天猫淘宝掘金
查看>>
李想创办的车和家发布智能电动车品牌“理想智造”
查看>>
智利海岸附近发生里氏5.6级地震 无人员伤亡消息
查看>>
手机上的中国“轻春运”
查看>>