数学
JustSleep
这个作者很懒,什么都没留下…
展开
-
LeetCode 29. Divide Two Integers
给定两个整数,被除数 dividend 和除数 divisor。将两数相除,要求不使用乘法、除法和 mod 运算符。 返回被除数 dividend 除以除数 divisor 得到的商。 示例 1: 输入: dividend = 10, divisor = 3 输出: 3 示例 2: 输入: dividend = 7, divisor = -3 输出: -2 说明: 被除数和除数均...原创 2019-02-12 16:38:16 · 138 阅读 · 0 评论 -
201. Bitwise AND of Numbers Range
给定范围 [m, n],其中 0 <= m <= n <= 2147483647,返回此范围内所有数字的按位与(包含 m, n 两端点)。 示例 1: 输入: [5,7] 输出: 4 示例 2: 输入: [0,1] 输出: 0 解题思路; 仔细观察我们可以得出,最后的数是该数字范围内所有的数的左边共同的部分 public int rangeBitwiseA...原创 2019-03-03 19:09:24 · 107 阅读 · 0 评论 -
LeetCode 279. Perfect Squares
给定正整数 n,找到若干个完全平方数(比如 1, 4, 9, 16, ...)使得它们的和等于 n。你需要让组成和的完全平方数的个数最少。 示例 1: 输入: n = 12 输出: 3 解释: 12 = 4 + 4 + 4. 示例 2: 输入: n = 13 输出: 2 解释: 13 = 4 + 9. 解题思路: 四平方和定理,任意一个正整数均可表示为4个整数的平方和,其实是...原创 2019-02-14 15:23:50 · 61 阅读 · 0 评论 -
LeetCode 264. Ugly Number II
编写一个程序,找出第 n 个丑数。 丑数就是只包含质因数 2, 3, 5 的正整数。 示例: 输入: n = 10 输出: 12 解释: 1, 2, 3, 4, 5, 6, 8, 9, 10, 12 是前 10 个丑数。 说明: 1 是丑数。 n 不超过1690。 解题思路: 一个丑陋数分别乘以2,3,5,而要求的丑陋数就是从已经生成的序列中取出来的,我们每次都从三个列表中取出...原创 2019-02-14 11:59:44 · 74 阅读 · 0 评论 -
LeetCode 263. Ugly Number
编写一个程序判断给定的数是否为丑数。 丑数就是只包含质因数 2, 3, 5 的正整数。 示例 1: 输入: 6 输出: true 解释: 6 = 2 × 3 示例 2: 输入: 8 输出: true 解释: 8 = 2 × 2 × 2 示例 3: 输入: 14 输出: false 解释: 14 不是丑数,因为它包含了另外一个质因数 7。 说明: 1 是丑数。 输入不会...原创 2019-02-14 11:41:37 · 120 阅读 · 0 评论 -
LeetCode 223. Rectangle Area
在二维平面上计算出两个由直线构成的矩形重叠后形成的总面积。 每个矩形由其左下顶点和右上顶点坐标表示,如图所示。 示例: 输入: -3, 0, 3, 4, 0, -1, 9, 2 输出: 45 说明: 假设矩形面积不会超出 int 的范围。 解题思路: 计算方法为矩形1的面积+矩形2的面积-两个矩形共同的覆盖面积。 public static int computeArea(i...原创 2019-02-14 10:52:47 · 91 阅读 · 0 评论 -
LeetCode 179. Largest Number
给定一组非负整数,重新排列它们的顺序使之组成一个最大的整数。 示例 1: 输入: [10,2] 输出: 210 示例 2: 输入: [3,30,34,5,9] 输出: 9534330 解题思路: 这道题给了我们一个数组,让我们将其拼接成最大的数,那么根据题目中给的例子来看,主要就是要给给定数组进行排序,但是排序方法不是普通的升序或者降序,因为9要排在最前面,而9既不是数组中最大...原创 2019-02-24 19:51:02 · 67 阅读 · 0 评论 -
LeetCode 204. Count Primes
统计所有小于非负整数 n 的质数的数量。 示例: 输入: 10 输出: 4 解释: 小于 10 的质数一共有 4 个, 它们是 2, 3, 5, 7 。 解题思路: 埃拉托斯特尼筛法,将2、3、5...的所有质数的倍数都标记为非质数,最后可求。 public static int countPrimes(int n) { int res=0; boolean prime[]...原创 2019-02-13 20:14:06 · 68 阅读 · 0 评论 -
LeetCode 202. Happy Number
编写一个算法来判断一个数是不是“快乐数”。 一个“快乐数”定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和,然后重复这个过程直到这个数变为 1,也可能是无限循环但始终变不到 1。如果可以变为 1,那么这个数就是快乐数。 示例: 输入: 19 输出: true 解释: 12 + 92 = 82 82 + 22 = 68 62 + 82 = 100 12 + 02 + ...原创 2019-02-13 19:57:35 · 80 阅读 · 0 评论 -
LeetCode 50. Pow(x, n)
实现 pow(x, n) ,即计算 x 的 n 次幂函数。 示例 1: 输入: 2.00000, 10 输出: 1024.00000 示例 2: 输入: 2.10000, 3 输出: 9.26100 示例 3: 输入: 2.00000, -2 输出: 0.25000 解释: 2-2 = 1/22 = 1/4 = 0.25 解题思路: 折半计算,每次把n缩小一半,这样n最终...原创 2019-02-13 16:54:28 · 63 阅读 · 0 评论 -
LeetCode 69. Sqrt(x)
实现 int sqrt(int x) 函数。 计算并返回 x 的平方根,其中 x 是非负整数。 由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去。 示例 1: 输入: 4 输出: 2 示例 2: 输入: 8 输出: 2 说明: 8 的平方根是 2.82842..., 由于返回类型是整数,小数部分将被舍去。 解题思路: 二分搜索法的思想,各变量的设置值得反...原创 2019-02-13 16:32:23 · 55 阅读 · 0 评论 -
LeetCode 67. Add Binary
给定两个二进制字符串,返回他们的和(用二进制表示)。 输入为非空字符串且只包含数字 1 和 0。 示例 1: 输入: a = "11", b = "1" 输出: "100" 示例 2: 输入: a = "1010", b = "1011" 输出: "10101" 解题思路: 将两个字符串翻转,从低位开始加,判断最高位是否有进位,有进位的话在最高位加一。 public原创 2019-02-13 10:54:08 · 60 阅读 · 0 评论 -
LeetCode 60. Permutation Sequence
给出集合 [1,2,3,…,n],其所有元素共有 n! 种排列。 按大小顺序列出所有排列情况,并一一标记,当 n = 3 时, 所有排列如下: "123" "132" "213" "231" "312" "321" 给定 n 和 k,返回第 k 个排列。 说明: 给定 n 的范围是 [1, 9]。 给定 k 的范围是[1, n!]。 示例 1: 输入: n = 3原创 2019-02-12 20:15:32 · 86 阅读 · 0 评论 -
LeetCode 43. Multiply Strings
给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示为字符串形式。 示例 1: 输入: num1 = "2", num2 = "3" 输出: "6" 示例 2: 输入: num1 = "123", num2 = "456" 输出: "56088" 说明: num1 和 num2 的长度小于110。 num1 和原创 2019-02-12 17:17:55 · 70 阅读 · 0 评论 -
LeetCode 166. Fraction to Recurring Decimal
给定两个整数,分别表示分数的分子numerator 和分母 denominator,以字符串形式返回小数。 如果小数部分为循环小数,则将循环的部分括在括号内。 示例 1: 输入: numerator = 1, denominator = 2 输出: "0.5" 示例2: 输入: numerator = 2, denominator = 1 输出: "2" 示例3: 输入...原创 2019-03-03 20:51:36 · 52 阅读 · 0 评论