美文网首页
将一个有序的数组变为无序

将一个有序的数组变为无序

作者: 一氧化二氢有毒 | 来源:发表于2016-01-20 01:01 被阅读0次

在看《算法》的时候遇到一个题目,要求生成一个无序的字符串。 看答案有快排的思想在里面

private static void best(int[] a, int lo, int hi) { 
// precondition: a[lo..hi] contains keys lo to hi, in order 
    for (int i = lo; i <= hi; i++) 
        assert a[i] == i; 
    if (hi <= lo) return;
    int mid = lo + (hi - lo) / 2; 
    best(a, lo, mid-1); 
    best(a, mid+1, hi); 
    exch(a, lo, mid);
 }

via:http://algs4.cs.princeton.edu/23quicksort/QuickBest.java.html

相关文章

  • 将一个有序的数组变为无序

    在看《算法》的时候遇到一个题目,要求生成一个无序的字符串。 看答案有快排的思想在里面 via:http://alg...

  • 冒泡排序

    冒泡排序同样是将数组分区给有序区和无序区,冒泡排序的每一轮都是将无序数组的最小(或最大)值冒泡到有序数组中, //...

  • 插入排序之直接插入

    原理:将数组分为无序区和有序区两个区,然后不断将无序区的第一个元素按大小顺序插入到有序区中去,最终将所有无序区元素...

  • Java实现插入排序

    插入排序基本原理 将待排序列表看成有序和无序的两部分,初始为有长度为1的有序数组和其后的无序数组。之后从无序数组中...

  • 插入排序

    Introduce 思想 将数组看做两个数组,一个有序,一个无序,从索引为1的位置开始遍历,当前值和有序数组中的元...

  • golang实现堆排序

    算法题:给定一个整型数组,将数组的中的元素按升序排序。 基本思路:操作:排序输入:无序整型数组输出:有序整型数组 ...

  • 二分查找

    题目描述: 输入一个有序的数组 sort_array 和一个无序的数组 random_array ,对于无序数组 ...

  • 为人 - 04 日常管理

    整理篇 理论1: 世界是熵增的,一切都将从有序变为无序,或者说从我们指定的有序变为指定的无序->整理术: 定义有序...

  • 排序_选择排序之简单选择排序(直接选择排序)

    基本思想 数组分成有序区和无序区,初始时整个数组都是无序区,然后每次从无序区选一个最小的元素直接放到有序区的最后,...

  • 插入排序

    关键点 无序区 有序区,一开始第一个元素就在有序区,每次从无序区选择一个元素,插入到有序区中,直到无序区变为空 插...

网友评论

      本文标题:将一个有序的数组变为无序

      本文链接:https://www.haomeiwen.com/subject/tkqlkttx.html