sort()方法可将数组升序排序,但它是把数组的值转化为字符串后在排序的,如 var a = [1,12,3,8,123]a.sort() 结果 1,12,123,3,8和我们想要的结果不一样,解决方法,function compare(value1, value2) { return...
分类:
其他好文 时间:
2014-06-25 23:56:59
阅读次数:
334
冒泡排序(Bubble
Sort,台湾译为:泡沫排序或气泡排序)是一种简单的排序算法。
它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。
算法原理:
比较相邻的元素。如果第一个比第二个大,就...
分类:
其他好文 时间:
2014-06-25 00:17:22
阅读次数:
250
插入排序
包括:直接插入排序,二分插入排序(又称折半插入排序),链表插入排序,希尔排序(又称缩小增量排序)。属于稳定排序的一种(通俗地讲,就是两个相等的数不会交换位置)
。
直接插入排序:
1、算法的伪代码(这样便于理解):
INSERTION-SORT (A, n) A[1 . . n]
for...
分类:
其他好文 时间:
2014-06-22 22:23:22
阅读次数:
218
STL封装了一个排序算法,该算法对应的头文件为#include,我们可以根据需要对一个数组进行排序或者降序。...
分类:
其他好文 时间:
2014-06-22 19:52:07
阅读次数:
193
选择排序的基本思想:
选择排序(Selection sort)是一种简单直观的排序算法。它的工作原理如下。首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。
选择排序的主要优点与数据移动有关。如果某个元素位于正确的最终位置上,则它不会被移动。选择排序每次交换一对元素,它们当中至少有一个将被移到其最终位置上,因此对n个元素的表进行排序总共进行至多n-1次交换。在所有的完全依靠交换去移动...
分类:
编程语言 时间:
2014-06-22 18:18:19
阅读次数:
188
在系统中查找大文件的方法:
1. 统计当前目录的文件(或文件夹)大小,并按照从大到小的顺序排序
du -s /home/* | sort -nr
* -h已易读的格式显示指定目录或文件的大小
* -s选项指定对于目录不详细显示每个子目录或文件的大小
2. 查找大于100M的文件,并显示详细信息
find . -type f -size +...
分类:
其他好文 时间:
2014-06-22 17:58:51
阅读次数:
185
模板方法模式(template method pattern) 排序(sort) 详解本文地址: http://blog.csdn.net/caroline_wendy参考模板方法模式(template method pattern): http://blog.csdn.net/caroline_wendy/article/details/32159455模板方法模式的一个主要的应用是排序(sor...
分类:
其他好文 时间:
2014-06-22 15:24:51
阅读次数:
231
Sort a linked list in O(n log n)
time using constant space complexity.
这道题目非常简短的一句话,给链表排序,看到nlogn,我们可以来简单复习一下排序。首先说一下这个nlogn的时间复杂度(根据决策树我们可以得出这个界限),是基于比较排序的最小上限,也就是说,对于没有一定范围情况的数据来说,最快的排序思路就是归并和快速排...
分类:
其他好文 时间:
2014-06-22 09:02:54
阅读次数:
250
插入排序(Insertion Sort)的算法描述是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。插入排序在实现上,通常采用in-place排序(即只需用到O(1)的额外空间的排序),因而在从后向前扫描过程中,需要反复把已排序元素逐步向后挪位,为最新元素提供插入空间。
通俗解释:
①假设初始序列的第一个元素是有序的(当一个序列只有1个元素时,我们可以认为其是有序的)。
②从第二个元素开始与前面的元素进行比较,如果比前面的大就不动位置...
分类:
编程语言 时间:
2014-06-22 07:57:34
阅读次数:
370
package com.jp.algorithm.sort;/** * 假设我们要对0-7内的5个元素(4,7,2,5,3)排序(这里假设这些元素没有重复)。那么我们就可以采用Bit-map的方法来达到排序的目的。要表示8个数 * ,我们就只需要8个Bit(1Bytes),首先我们开辟1Byte的空...
分类:
其他好文 时间:
2014-06-21 16:20:21
阅读次数:
352