
数学
文章平均质量分 79
jcwKyl
吾尝终日而思矣,不如须臾之所学也。
展开
-
编程之美——找符合条件的整数
题目:任意给定一个正整数N,求一个最小的正整数M(M>1),使得N*M的十进制表示形式里只含有1和0.解决这个问题首先考虑对于任意的N,是否这样的M一定存在。可以证明,M是一定存在的,而且不唯一。简单证明:因为 这是一个无穷数列,但是数列中的每一项取值范围都在[0, N-1]之间。所以这个无穷数列中间必定存在循环节。即假设有s,t均是正整数,且s,所以例如,取N=3,因为10的任何原创 2009-02-02 22:12:00 · 8752 阅读 · 7 评论 -
一种写程序快速计算常系数线性齐次递推关系的指定项的方法
上次学习到了利用Fibonacci恒等式在log(n)时间内计算出F(n)的方法。这种方法也适用于任何常系数线性齐次递推数列的计算。在这里把能想到的东西小结一下。例一:扩展Euclid算法。两个整数a,b的最高公因数为gcd(a,b)。扩展Euclid算法在计算出gcd(a,b)的同时计算出gcd(a,b)=sa+tb中的系数s,t。因为:这样,只要计算出中间那些矩阵的乘积,就很容易计算出系数s,原创 2009-02-03 14:58:00 · 2333 阅读 · 0 评论 -
数组循环移位问题
《编程之美》中的题目要求只使用两个附加变量。王晓东编著的《算法设计与实验题解》中要求只用到O(1)的辅助空间。其它地方两本书的要求相同,都是O(n)的时间复杂度。两本书中的解法总结起来就是三种方法:(1)循环换位算法(2)三次反转算法(3)排列循环算法。这三种算法在王晓东的著作中都有实现代码。第一种算法是最原始的算法。第二种算法比较巧妙,即使用VU=reverse(reverse(U)reserv原创 2009-02-10 16:41:00 · 7201 阅读 · 5 评论 -
约瑟夫环的数学解法
原文出处:http://blog.youkuaiyun.com/MapReduce/archive/2007/04/02/1549494.aspx作者:MapReduce全文:约瑟夫环问题是一道经典的数据结构题目问题描述:n个人(编号0~(n-1)),从0开始报数,报到(m-1)的退出,剩下的人继续从0开始报数。求胜利者的编号。一般我们采用一个循环队列来模拟约瑟夫环的求解过程,但是如果n比较大的时候,采用模拟转载 2009-02-13 08:36:00 · 3500 阅读 · 1 评论 -
关于JOJ 2042的启发——一种写程序计算幂函数的方法
JOJ 2042是一个程序理解题,其中给出了一段奇妙的计算x^3的程序。它的原理如下:由上可知,幂函数的增加量第次加6,其初始值为1.所以,就可以把程序写成这样来计算立方:int f(x) { int c = 0, d = 1, e = 6; while(x--) { c += d; d +原创 2009-02-14 18:36:00 · 2022 阅读 · 1 评论 -
一个错误的使用数学归纳法的证明题剖析
题目:证明Fibonacci数F(n)=O(n),F(n)定义如下:F(1)=1,F(2)=2,F(n)=F(n-1)+F(n-2)证明:n时:F(1)=O(1),F(2)=O(2)当n大于2时,假设对于k成立。考虑n。F(n)=F(n-1)+F(n-2)。由归纳法知,F(n-1)=O(n-1),F(n-2)=O(n-2),所以F(n)=O((n-1)+(n-2))=O(n)。原创 2009-03-13 14:34:00 · 2480 阅读 · 0 评论 -
数学是一种思考方式
本方来自:http://www.kuqin.com/math/20071126/2658.html数学是一种思考方式作者:不详 来源:互联网 酷勤网收集 2007-11-26 摘要酷勤网 数学的发展历史中,又包含了许多人无穷的创造力。光靠逻辑推理来一步步解决问题显然是不够的。很多数学问题的解决,都起源于某种直觉,某种创造性构建,甚至把许多表面不相关的东西牵连在一起思考。然转载 2009-03-12 13:01:00 · 1490 阅读 · 1 评论