zoukankan      html  css  js  c++  java
  • 交换排序(java)

    package exchange_sort;
    import java.util.Random;
    /*各类交换排序
     * ------数据存储范围1~s.length-1 ------
     *主要包含
     *冒泡排序
     *快排
     */
    public class Sort {
    /*
    * 冒泡排序 稳定
    */
    private static void bubbleSort(int[] s) {
    int i, j, temp;
    for (i = 1; i < s.length; i++)
    for (j = 1; j < s.length - i; j++) {
    if (s[j] > s[j + 1]) {
    temp = s[j + 1];
    s[j + 1] = s[j];
    s[j] = temp;
    }


    }


    }

            private static int partition(int[] s, int left, int right) {//一趟快排划分过程。将待划分数组分为左右两部分并以pivot为界

    int pivot = s[left];
    while (left != right) {
    while ((left < right) && s[right] >= pivot)
    right--;
    s[left] = s[right];
    while ((left < right) && s[left] <= pivot)
    left++;
    s[right] = s[left];
    }
    s[left] = pivot;
    return left;


    }

            private static void quickSort(int[] s, int left, int right) {

    /*
    * 高速排序 不稳定
    */
    int pov;// 中间位
    if (left < right) {
    pov = partition(s, left, right);// 一趟划分
    quickSort(s, left, pov - 1);
    quickSort(s, pov + 1, right);


    }


    }

            //数据量取的99999个数据,发现快排比冒泡快太多了

            public static void main(String[] args) {

    int length = 100000;
    int[] s = new int[length];
    for (int i = 1; i < s.length; i++)
    s[i] = new Random().nextInt(800000);
    for (int i = 1; i < s.length; i++)//源数据
    System.out.println(s[i]);
    System.out.println("------------------------------");
    System.out.println("------------------------------");
    System.out.println("------------------------------");
    // bubbleSort(s);//冒泡
    // quickSort(s, 1, 99999);//快排
    for (int i = 1; i < s.length; i++)
    System.out.println(s[i]);


    }


    }
  • 相关阅读:
    redis使用watch完成秒杀抢购功能:
    OAUTH协议
    常用mysql命令大全
    版本控制器 (Svn,Git)
    vue axios上传文件实例
    vue-resource 和 axios的区别
    js递归算法1+ 2+3.....100的和
    vue-cli title 里面怎动态显示文字
    Entity Framework With Mysql 之Code First
    关于a标签下的img元素在IE7下不能点击的问题
  • 原文地址:https://www.cnblogs.com/yjbjingcha/p/7048139.html
Copyright © 2011-2022 走看看