奇技淫巧题

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值