zoukankan      html  css  js  c++  java
  • java中的各种排序

    冒泡排序
    分为从大到小和从小到大两种。
    从大到小 每次把最小的冒到最后面
    从小到大 每次把最大的冒到最后面(以这个为例)
    从前往后比较 ,如果前面比后面小,就交换位置。

    int[] but= {23,43,6,80,92,14,38};
     for(int i=0;i<but.length;i++) {
            for(int j=0;j<but.length-i-1;j++) {
                if(but[j]>but[j+1]) {
                    int temp;
                    temp=but[j];
                    but[j]=but[j+1];
                    but[j+1]=temp;
                }
            }
        }


    选择排序
    每次把最小的(或者最大的)元素放入已排序的集合中
     一般先把第一个元素当成最小的元素

    for(int i=0;i<but.length;i++) {
            int min=i;//记录当前位置
                        //找出最小的数,并把min指向它
         for(int j=i;j<but.length;j++) {
            
             if(but[j]<but[min]) {
                 min=j;
             }
                       //交换最小的数but[min]和第i位数的位置
             int temp=but[min];
             but[min]=but[i];
             but[i]=temp;
         }
        }



    插入排序
    对未排序的序列元素逐个插入,直到所有元素都插完
    思想插入第i个时,前面的第1个到第i-1个都已经排好序,
    用第i个跟前面的轮流比较,找到插入位置将第i个插入,原来位置及以后的全部后移一位。

    int[] but= {12,32,56,7,4,98};    
       for (int i = 1; i < but.length; i++) {
           int temp = but[i];
           int j;
           for ( j = i - 1; j >= 0 && but[j] > temp; j--) {
               but[j + 1] = but[j];//后移一位
           }
           but[j + 1] = temp;
       }

     



  • 相关阅读:
    在 Tomcat 8 部署多端口项目
    tar -zxvf jdk-8u144-linux-x64.tar.gz
    linux下删除文件夹的命令
    springboot+mybatis案例
    阿里云主机密码
    查看公钥
    jenkins安装
    redis详解(包含使用场景)
    什么是JSONP?
    在CentOS7上面搭建GitLab服务器
  • 原文地址:https://www.cnblogs.com/yxj808/p/11946556.html
Copyright © 2011-2022 走看看