摘要: 合并两个排序的整数数组A和B变成一个新的数组。 思路:双指针移动比较,最后把未处理的数都加进去vector即可。 阅读全文
posted @ 2018-01-26 16:21 陈阿毛 阅读(82) 评论(0) 推荐(0)
摘要: 在数组中找到第k大的元素。 思路:快排,然后直接输出。 我的代码是直接用了STL的函数sort: 但标准答案是手写一个快速排序: 备注:后来自己也试着手动写了一个快排,然后出了各种错误。。。比如没考虑到元素全部相同导致死循环,没有剪枝优化之类的。。。改了一天还是卡在77%的数据,从TLE改到WA。。 阅读全文
posted @ 2018-01-25 10:29 陈阿毛 阅读(98) 评论(0) 推荐(0)
摘要: 设计一个算法,找出只含素因子2,3,5 的第 n 小的数。 符合条件的数如:1, 2, 3, 4, 5, 6, 8, 9, 10, 12... 思路:用set去存已求的丑数(去重),用优先队列去存待求的丑数。先让第一个丑数1进set和队列,因为丑数的2、3、5倍也是丑数,所以每次都从队列中取最小的丑 阅读全文
posted @ 2018-01-25 10:24 陈阿毛 阅读(88) 评论(0) 推荐(0)
摘要: 计算数字k在0到n中的出现的次数,k可能是0~9的一个值。 思路:暴力枚举。 代码: 阅读全文
posted @ 2018-01-24 18:00 陈阿毛 阅读(79) 评论(0) 推荐(0)
摘要: 设计一个算法,计算出n阶乘中尾部零的个数。 思路:0的个数取决于5因子的个数,5的一次方对答案贡献一个0,5的平方贡献两个0,5的三次方贡献3个0......以此类推。 代码: 阅读全文
posted @ 2018-01-24 17:54 陈阿毛 阅读(105) 评论(0) 推荐(0)
摘要: 给出两个整数a和b, 求他们的和, 但不能使用 + 等数学运算符。 思路:模拟二进制加法运算,^ 求得基位,&求得进位。不断循环,直至进位为0。 核心公式:a + b = (a ^ b) + (a & b << 1) 。 代码: 阅读全文
posted @ 2018-01-24 17:41 陈阿毛 阅读(166) 评论(0) 推荐(0)