LintCode笔记
w哼哼怪
他很懒,就一直试图在写代码
展开
-
LintCode 回文数
判断一个正整数是不是回文数。 回文数的定义是,将这个数反转之后,得到的数仍然是同一个数。 注意事项 给的数一定保证是32位正整数,但是反转之后的数就未必了。 11, 121, 1, 12321 这些是回文数。 23, 32, 1232 这些不是回文数。 public class Solution { /*原创 2017-08-30 19:40:37 · 227 阅读 · 0 评论 -
LintCode 字符串置换
给定两个字符串,请设计一个方法来判定其中一个字符串是否为另一个字符串的置换。 置换的意思是,通过改变顺序可以使得两个字符串相等。 您在真实的面试中是否遇到过这个题? Yes 样例 "abc" 为 "cba" 的置换。 "aabc" 不是 "abcc" 的置换。 public class Solution { /*原创 2017-08-30 18:51:30 · 256 阅读 · 0 评论 -
LintCode 1.A + B 问题
给出两个整数a和b, 求他们的和, 但不能使用 + 等数学运算符。 注意事项 你不需要从输入流读入数据,只需要根据aplusb的两个参数a和b,计算他们的和并返回就行。 思路: 把加法拆分为: 相加->异或运算 进位->与运算 将得到的结果(相加的结果和进位)再做同样的操作(相加),直到进位为0,递归完成。 异或运算: 不同为原创 2017-09-05 23:35:31 · 287 阅读 · 0 评论 -
LintCode 2.尾部的零
设计一个算法,计算出n阶乘中尾部零的个数 样例 11! = 39916800,因此应该返回 2 思路: 1 * 2 * 3 * 4 * ......* N中每一个因数分解因子,结果: 1 * 2 * 3 * (2 * 2) * 5 * (2 * 3) *7 * (2 * 2 *2) *...... 10进制数结尾每一个0都是因数10存原创 2017-09-06 15:31:41 · 367 阅读 · 0 评论 -
LintCode 3.统计数字
计算数字k在0到n中的出现的次数,k可能是0~9的一个值样例 例如n=12,k=1,在 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12],我们发现1出现了5次 (1, 10, 11, 12)public int digitCounts(int k, int n) { int count = 0; //循环从n->0,每个数和k比较原创 2017-09-06 22:41:17 · 367 阅读 · 0 评论 -
LintCode 4.丑数 II
设计一个算法,找出只含素因子2,3,5 的第 n 大的数。 符合条件的数如:1, 2, 3, 4, 5, 6, 8, 9, 10, 12… 注意事项 我们可以认为1也是一个丑数 样例 如果n = 9, 返回 10 思路:由题目的要求可知:找到出 2, 3, 5倍数的数。并排序。直到到第n个数定义一个数组存放丑数,1是已知的丑数。 从2,3,5中挑选最小的添加原创 2017-09-07 13:43:25 · 731 阅读 · 0 评论