zoukankan      html  css  js  c++  java
  • 快速排序

    排序算法-------快速排序

    排序目标集合:{6,9,2,8,3,7,4,5,1,0}

    排序方法代码:

     1 public static void quickSort(Integer[] array, int start, int end) {
     2         
     3         if (start >= end) {            // 排序结束条件
     4             return;
     5         }
     6         
     7         int i = start;        // 拷贝一份当前排序数组的起始下标和结束下标
     8         int j = end;
     9         
    10         int temp = array[start];    // 拷贝中间值
    11         while (i < j) {
    12             while (i < j && array[j] >= temp) {
    13                 j--;
    14             }
    15             if (i < j) {
    16                 array[i++] = array[j];
    17             }
    18             while (i < j && array[i] <= temp) {
    19                 i++;
    20             }
    21             if (i < j) {
    22                 array[j--] = array[i];
    23             }
    24         }
    25         array[i] = temp;
    26         
    27         // 递归调用
    28         quickSort(array, start, i - 1);
    29         quickSort(array, i + 1, end);
    30     }

    排序过程:

    本次排序:中间值为 6
    0 1 2 5 3 4 6 7 8 9


    本次排序:中间值为 0
    0 1 2 5 3 4 6 7 8 9


    本次排序:中间值为 1
    0 1 2 5 3 4 6 7 8 9


    本次排序:中间值为 2
    0 1 2 5 3 4 6 7 8 9


    本次排序:中间值为 5
    0 1 2 4 3 5 6 7 8 9


    本次排序:中间值为 4
    0 1 2 3 4 5 6 7 8 9


    本次排序:中间值为 7
    0 1 2 3 4 5 6 7 8 9


    本次排序:中间值为 8
    0 1 2 3 4 5 6 7 8 9

  • 相关阅读:
    JDBC
    过滤器
    Servlet-web.xml 常见配置
    Servlet-HttpSession接口
    Servlet-Cookie对象
    Servlet-HttpServlet对象
    kmp算法及应用
    线段树入门到自闭
    tarjan算法与拓扑排序
    马拉车模板
  • 原文地址:https://www.cnblogs.com/caizhen/p/9463398.html
Copyright © 2011-2022 走看看