Week 15算法分析作业
2017-12-26 21:14
477 查看
Week 15算法分析作业
LeetCode题目 137. Single Number II
Given an array of integers, every element appears three times except for one, which appears exactly once. Find that single one.给定一个数组,除了一个元素外其余每个都出现3次,找出那个特例(要求在线性的时间内完成)我的解法
复杂度O(N)public int singleNumber(int[] nums) { int ans = 0; for(int i = 0; i < 32; i++) { int sum = 0; for(int j = 0; j < nums.length; j++) { if(((nums[j] >> i) & 1) == 1) { sum++; sum %= 3; } } if(sum != 0) { ans |= sum << i; } } return ans; }
感想:
看起来很简单,主要的难度是要在线性时间内完成相关文章推荐
- Week 16算法分析作业
- (算法分析Week15)Best Time to Buy and Sell Stock with Cooldown[Medium]
- Week 17算法分析作业
- Week 8算法分析作业
- Week 9算法分析作业
- Week 3算法分析作业
- Week 10算法分析作业
- Week 13算法分析作业
- 算法分析与设计week15--198. House Robber
- Week 2算法分析作业
- Week 18算法分析作业
- Week 4算法分析作业
- Week 12算法分析作业
- (算法分析Week15)01Matrix[Medium]
- Week 6算法分析作业
- Week 14算法分析作业
- (算法分析Week15)2 Keys Keyboard[Medium]
- --算法分析与设计--课程作业--【顺序统计】--【采用链表法散列表】--【开放地址法(双重散列)】
- 算法与设计分析作业(分治)
- 算法分析与设计课程作业第十九周#1