
算法
李智正在学习中
这个作者很懒,什么都没留下…
展开
-
十种经典算法
第十名:Huffman coding(霍夫曼编码) 霍夫曼编码(Huffman Coding)是一种编码方式,是一种用于无损数据压缩的熵编码(权编码)算法。1952年,David A. Huffman在麻省理工攻读博士时所发明的,并发表于《一种构建极小多余编码的方法》(A Method for the Construction of Minimum-Redundancy Codes)一文。原创 2016-04-22 20:20:29 · 652 阅读 · 0 评论 -
排列算法
给定一个可能包含重复的数字的集合,返回所有可能的唯一排列。 例如, [1,1,2]具有以下独特的排列: [1,1,2], [1,2,1],和 [2,1,1]. 基本思想:为每个数组中的每个数字,用它后的每一个元素。 避免重复,需要先检查。public class Permutations { public ArrayList<ArrayList<Integer>> permuteU原创 2016-07-20 16:43:25 · 369 阅读 · 0 评论 -
希尔排序
希尔排序,也称递减增量排序算法,是插入排序的一种更高效的改进版本。希尔排序是非稳定排序算法。 希尔排序是基于插入排序的以下两点性质而提出改进方法的: 插入排序在对几乎已经排好序的数据操作时,效率高,即可以达到线性排序的效率 但插入排序一般来说是低效的,因为插入排序每次只能将数据移动一位原始的算法实现在最坏的情况下需要进行O(n2)的比较和交换。之后对算法进行了少量修改,可以使得性能提升至O(n原创 2017-02-20 22:10:11 · 431 阅读 · 0 评论