数据结构与算法
文章平均质量分 64
createchance
一个喜欢Android,linux开源技术的人,简单,普通,但是不平凡。
展开
-
经典问题LCS(最大公共子串问题)C代码实现
LCS(Longest Commons Sequence)问题,也就是最长公共子串问题,是一个经典的算法问题。该问题在很多地方都会遇到。关于这个问题的解决方案,目前最佳的实现就是使用动态规划的方式进行实现,关于使用动态规划设计这个问题算法的过程,这里就不再描述了,网上有很多的描述,整理如下: wiki百科中的描述:https://en.wikipedia.org/wiki/Longest_comm原创 2016-11-29 16:38:12 · 1354 阅读 · 0 评论 -
Topological Sort拓扑排序
在计算机科学中有很多问题的本质就是一个排序的问题,排序中最简单直接的形式就是对一堆数字进行排序。但是还有一些情况和数字没有关系的,这些情况下也需要进行一定的排序。比如说,穿衣服的过程,你首先需要穿上内衣,然后才能穿上外套,继而才能带上手表等佩戴物。这些事情都是需要排序的,但是这些事情的排序就不是简单的数字排序,因为这里面压根就没有数字。 那么面对这样的问题,我们怎么排序呢?最容易想到的问题就是使用原创 2016-11-30 12:46:58 · 3370 阅读 · 0 评论 -
Binary Search Tree C语言实现
Binary Search Tree是数据结构中比较有用的一种二叉树结构,这种结构讲大量的数据进行平摊式分布,并且规定大的数在右边,小的数在左边,以这种方式存放的数据可以非常方便地做数据排序和检索。 关于BST的更多信息,可以查看这个链接(英文,讲的非常好,不得不赞):http://algs4.cs.princeton.edu/32bst/ 台湾国立清华大学韩永楷老师的MOOC(讲的超级棒,完爆原创 2016-12-04 13:18:10 · 4195 阅读 · 2 评论 -
Heap Sort堆排序
××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××× 转载自:http://www.cnblogs.com/kkun/archive/2011/11/23/2260286.html ×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××原创 2016-12-04 16:31:59 · 1321 阅读 · 0 评论 -
经典八大排序算法
**声明:本文转载自:http://blog.csdn.net/hguisu/article/details/7776068**概述排序有内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存。我们这里说说八大排序就是内部排序。 当n较大,则应采用时间复杂度为O(nlog2n)的排序方法:快速转载 2016-11-25 15:24:41 · 819 阅读 · 0 评论 -
深度优先与广度优先
文章转载自:http://blog.csdn.net/a45872055555/article/details/37543795今天做了道题目,《手机键盘输入》当按下23时,输出[“ad”, “ae”, “af”, “bd”, “be”, “bf”, “cd”, “ce”, “cf”]。其实说白了,也就是全排列问题,将2代表的abc,和3代表的def输出组合的字符。我是按照普通方法,递归来写的,转载 2016-11-28 17:14:33 · 1574 阅读 · 0 评论