算法学习
文章平均质量分 72
suwenqiang2011
这个作者很懒,什么都没留下…
展开
-
视频解码基础知识
一 基础篇1.1 图形、图像和视频图形(graphic):和图像与视频不同,有一种说法是图形就是自然界的客观世界不存在的图案。对于计算机中的图形研究,有专门的计算机图形学,主要的研究对象是点、线、面等抽象事物。目前所谓的计算机显卡3D技术支持,主要就是图形技术相关的范畴。关于图形方面的开发,好象OpenGL是其中比较有名的3D图形库。图像(image):和图形相反,图像可以转载 2012-12-14 16:21:28 · 1226 阅读 · 0 评论 -
如何测试洗牌程序
原文地址:http://coolshell.cn/articles/8593.html我希望本文有助于你了解测试软件是一件很重要也是一件不简单的事。我们有一个程序,叫ShuffleArray(),是用来洗牌的,我见过N多千变万化的ShuffleArray(),但是似乎从来没人去想过怎么去测试这个算法。所以,我在面试中我经常会问应聘者如何测试ShuffleArray(),没想到这个问转载 2012-11-20 14:18:56 · 927 阅读 · 0 评论 -
qsort的使用
qsort包含在头文件中,此函数根据你给的比较条件进行快速排序,通过指针移动实现排序。排序之后的结果仍然放在原数组中。使用qsort函数必须自己写一个比较函数。函数原型:void qsort ( void * base, size_t num, size_t size, int ( * comparator ) ( const void *, const void * ) );转载 2012-11-20 15:59:32 · 599 阅读 · 0 评论 -
对于桶式排序的改进
在前一篇文章中,我转载了一篇别人的blog,关于桶式排序算法http://blog.csdn.net/suwenqiang2011/article/details/8000783这里面桶式排序算法的两个缺陷第一,待排序数组元素为非负整数;第二,待排序数组元素有界。对于第一点,如果所要排序的数据中有负整数,其实这个是可以解决的,先将数组分为两部分,一部分是正整数,另外的是负整原创 2012-09-20 16:59:00 · 760 阅读 · 0 评论 -
简单的桶式排序-基于数组的实现
我在《数据结构与算法分析-C语言描述》中看到有提到一种排序方式,桶式排序,这是一种非常简单的排序方法,我觉得它的实现原理和hash表的原理有点类似。书上并没有相关的代码,所以我就自己写了一个,但是我的想法稍显比较复杂,后来我在csdn上看到有人实现了相关的代码。所以先转载一篇这个别人的文章,在后面一篇文章,我在来分析我改进后的代码。http://blog.csdn.net/wwang转载 2012-09-20 16:34:33 · 1883 阅读 · 1 评论 -
排序算法的稳定性分析
这几天笔试了好几 次了,连续碰到一个关于常见排序算法稳定性判别的问题,往往还是多选,对于我以及和我一样拿不准的同学可不是一个能轻易下结论的题目,当然如果你笔试之前 已经记住了数据结构书上哪些是稳定的,哪些不是稳定的,做起来应该可以轻松搞定。本文是针对老是记不住这个或者想真正明白到底为什么是稳定或者不稳定的人 准备的。 首先,排序算法的稳定性大家应该都知道,通俗地讲就是能保证排序前转载 2012-09-14 16:05:57 · 757 阅读 · 0 评论 -
约瑟夫环问题
约瑟夫环是一个数学的应用问题:已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围。从编号为k的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;依此规律重复下去,直到圆桌周围的人全部出列。这是一个很常见的问题,在面试中经常出现。考题应该分为两种:1.考察出列人的顺序以及最后winner的序号2.不考察出列人的顺序,只问最后win原创 2012-09-13 14:21:55 · 598 阅读 · 0 评论 -
Fibonacci数列 递归和非递归的解法
Fibonacci数列,我想有的人在大学甚至高中就已经接触过了,其数学表达如下:给定一正整数x,F(x) = 1 ( x=1 或 x=2)F(x) = F(x-1) + F(x-2) ( x > 2 )也就是说,前2个数是1, 后面的的数, 是前面2个数之和如果用计算机来解决的话, 可有递归和非递归算法, 对于递归算法很好理解, 也很好实现,直接照着上面的公式来就行了, 下原创 2012-09-03 18:21:16 · 1851 阅读 · 0 评论 -
最大公约数----欧几里德算法
在书上看到一个求解最大公约数的算法。代码如下:unsigned int gcd(unsigned int M , unsigned int N){ unsigned int tmp; if(N > M) { tmp = M; M原创 2012-09-03 15:07:39 · 686 阅读 · 0 评论 -
字符串个数匹配程序
看了下算法方面的书籍,以前觉得那个最大子串的问题,挺难的,看了那本书以后豁然开朗,里面列举了四种方法,算法负责度分别为N^3,N^2,NlogN,N。我贴下时间复杂度为N的代码:int MaxSubsequenceSum( const int A[], int N){ int ThisSum,MaxSum,j; ThisSum = MaxSum原创 2012-09-03 11:43:27 · 704 阅读 · 0 评论 -
七种常见的排序方式
几种基本的排序方式,很容易混淆,每次过一段时间后又忘了,所以这次一次性将这些排序方式集中整理了一下。首先是下面的分析表:排序方式英文缩写算法思想时间复杂度稳定性冒泡排序bubble_sort相邻比较,大数往后排N^2稳定交换排序exchange_sort前面的某个数逐个与后面的比较,小数往前移N^2原创 2012-11-21 09:46:43 · 1055 阅读 · 0 评论