算法
Am星星
这个人比较蠢 要什么都写下来才放心
展开
-
杨辉三角的算法设计以及优化
递归思路:算法清晰,思路简洁,代码量少,但执行速度缓慢。 function c(x,y){ if((y==1)||(y==x+1)) return 1; return c(x-1,y-1)+c(x-1,y); } for(var i=0;i for(var j=1;j prin原创 2018-01-30 23:34:31 · 1784 阅读 · 0 评论 -
lintcode第一题 a+b问题
给出两个整数a和b, 求他们的和, 但不能使用 +等数学运算符。 思路:看了搜索引擎上各位大神的思路,总结了一下,是需要用到二进制的计算 按1+2来说 0001 0010 则a+b就可以是a|b,那OK,如果有进位该怎么算 如果忽略进位的话 a+b可以是a^b 进位表示为a&b 综合以上三步 算法如下 int aplusb(int a ,in原创 2018-01-24 19:08:24 · 484 阅读 · 0 评论 -
Lintcode题目计算n阶乘中尾部0的个数
用10!这个数字做思考,发现每五个数得到一个0,总结规律 z=n/5+n/(5*5)+n/(5*5*5)+…+(直到n小于n的a次幂) //来源公式之美 代码如下: class Solution { public: /* * @param n: A long integer * @return: An integer, denote the原创 2018-01-25 23:49:47 · 411 阅读 · 0 评论 -
lintcode统计数字
当k不为0时 从1至10,在它们的个位数中,任意k都出现了1次。 从1至100,在它们的十位数中,任意k都出现了10次。 从1至1000,在它们的百位数中,任意k都出现了100次。 依次类推,从1至10的i次幂,在它们的左数第二位中,任意k都出现了10的i-1次幂次。举个例子,n = 2593,k = 5,从 1 至 2593 中,数字 5 总计出现了 813 次,其中有 259 次出现在个位,2...转载 2018-02-14 23:49:44 · 866 阅读 · 0 评论