博客专栏  >  编程语言   >  算法精粹

算法精粹

本专栏讲解了常用和经典的算法实现。

关注
3 已关注
8篇博文
  • 算法:选择排序

    一、概念  选择排序(它在不断的选择剩余元素之中的最小者):首先,找到数组中最小的那个元素,其次,将它和数组的第一个元素交换位置(如果第一个元素就是最小元素那么它就和自己交换)。再次,在剩下的元...

    2013-12-30 08:57
    1543
  • 算法:插入排序

    一、思想  插入排序:首先,从1个元素子数组元素开始,将第2个元素依次与子数组的元素比较大小,找个合适的位置(并将相应的子数组元素后移)并插入;再次,将第3个元素依次与子数组(2个元素)的元素比...

    2013-12-31 09:05
    1272
  • 算法:希尔排序

    一、思想  希尔排序:使数组中任意间隔为h的元素都是有序的。在进行排序的时候,如果h很大,我们就能将元素移动到很远的地方,为实现更小的h有序创造方便。用这种方式,对任意以1结尾的h序列,我们都能...

    2014-01-01 10:45
    1421
  • 算法:归并排序

    一、思想  归并排序:将一个数组排序,可以先(递归地)将它分成两半部份分别排序,然后将结果归并起来;    二、概念  归并:将两个有序的数组归并成一个更大的有序数组;  ...

    2014-01-02 08:57
    1648
  • 算法:键索引计数法

    一、思想  适用于小整数键的简单排序方法;假设数组a[]中的每个元素都保存了一个名字和一个组号,其中组号在0到R-1之间,以组号为键进行分组排序;    二、步骤  频率统计:...

    2014-01-12 09:36
    2137
  • 算法:低位优先(LSD)

    一、思想  此类字符串排序可以通过键索引计数法来完成;如果字符串长度均为W,那就从右向左以每个位置的字符作为键,用键索引方法将字符串排序W遍;    二、代码  /** *...

    2014-01-10 09:02
    2120
  • 算法:快速排序

    一、思想  快速排序是一种分治排序算法,将一个数组分成两个子数组,将两部分独立排序,当两个子数组都有序时整个数组就自然有顺序了。  该方法的关键在与切分,这个过程使得数组满足下面三个条件: ...

    2014-01-07 09:07
    1690
  • 算法:暴力字符串查找

    一、字符串查找  给定一段长度为N的文本和一个长度为M的模式(pattern)字符串,在文本中找到一个和该模式相符的子字符串;    二、暴力字符串查找  在文本中模式可能出现...

    2014-01-08 09:46
    2449
img博客搬家
img撰写博客
img专家申请
img意见反馈
img返回顶部