奇技淫巧题

Posted xero10

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了奇技淫巧题相关的知识,希望对你有一定的参考价值。

move zeros: https://leetcode.com/problems/move-zeroes/

找到第一个0,记录0的个数为count,将 a[i+count] 移动到 a[i]。可以理解为设定了两个指针

 

number of 1 bits: https://leetcode.com/problems/number-of-1-bits/

n &= n - 1; 一次可以去掉一个1,记录到 n == 0 执行的次数

 

Roman to integer: https://leetcode.com/problems/roman-to-integer/

判断prev和current的关系

 

ugly number: https://leetcode.com/submissions/detail/43018831/

约去num中所有的2、3、5因数,如果结果为1则返回true,否则返回false。实际约去所有的2、3、5之后如果num不为1,则说明有除2、3、5之外的质因数

 

rectangle area: https://leetcode.com/problems/rectangle-area/

超级傻逼。

 

isomorphic strings: https://leetcode.com/problems/isomorphic-strings/

定义两个256长度的数组并初始化为0,同时遍历两个字符串,每次先检查当前字符上一次出现的位置是否相同,若不同返回false,若相同则更新该字符的出现位置

 

range sum query: https://leetcode.com/submissions/detail/47164891/

将前n个数的和存在private的vector中。注意要在vector的最前面加一个0

 

single number: https://leetcode.com/problems/single-number/

因为0 ^ A == A && A ^ A == 0,所以将所有的元素xor起来即可

 

single number III: https://leetcode.com/problems/single-number-iii/

将所有的元素xor起来,只保留结果中最右边的1,然后通过将这一位是不是1将数组分成两个部分,将这两个部分分别xor起来就能得到结果。详细说明参考 https://leetcode.com/discuss/60408/sharing-explanation-of-the-solution

以上是关于奇技淫巧题的主要内容,如果未能解决你的问题,请参考以下文章

奇技淫巧之六

算法数据结构中有哪些奇技淫巧?

质因数的思维题

奇技淫巧

Go面试题:将一个正整数分解质因数 (Golang经典编程案例)

java编程题 --分解质因数