algorithm
AlwaysSLH
软件工程专业 本科 工作一年 嵌入式
展开
-
使用排序化简组合生成算法
组合问题在日常生活中随处可见,先来看一个摘于《离散数学》(第六版,Richard Johnsonbaugh著)的例子: 摇滚乐队“Unhinged Universe”录制了n段视频节目,时间长度分别为t1 ,t2 ,t3 ,…,tn 秒。一盘磁带可以容纳C秒的视频。这是Unhinged Universe发行的第一盘磁带,乐队希望这盘磁带能尽可能多的收入他们的视频节目。问题转化为从{1,2原创 2010-01-17 18:57:00 · 2236 阅读 · 1 评论 -
欧几里德算法中的Fibonacci序列
Normal 0 7.8 磅 0 2 false false false EN-US ZH-CN X-NONE原创 2009-10-30 21:26:00 · 1313 阅读 · 0 评论 -
使用洗牌算法生成随机序列
假如我们要构造一个取值在1到n之间的n项随机整数序列S,而且有一个可以生成i到j之间的随机整数的函数rand(i, j)。好的,我们可以简单的为序列S的每一项生成一个介于1到n之间的随机整数Si,伪代码如下:for(i = 1; i <= n; ++i){ Si = rand(1, n);} OK,问题解决。使用这个算法只需要调用n次rand(1, n)。 现在我原创 2009-09-10 00:42:00 · 3007 阅读 · 2 评论 -
不使用中间变量交换两个数值型变量的值
记得第一次接触“不使用中间变量交换两个数值型变量的值”这个概念是在学习算法的时候,课本后有这样一道课后题,当时想到的方法就是现在所说的加减法。后来在编程和学习的过程中又发现了几种方法,特写此帖,总结一下。这里所写的语言环境是C/C++语言,一些运算符的形式以及可以内嵌汇编代码的约束都是类C的。 第一类方法也是常用的方法,通过多次的数值计算来完成交换,到现在知道的有下面三种:原创 2009-05-19 16:02:00 · 9928 阅读 · 2 评论