Given an array of integers, every element appears three times except for one. Find that single one.

Note:
Your algorithm should have a linear runtime complexity. Could you implement it without using extra memory?

大意:

找出数组中只出现一次的元素,其余的都是出现三次

注意:

你的算法需要有一个线性的复杂度。即o(n)。最好不要使用额外的memory来实现

分析:如果序列整齐,1112223444,看到这个规律可以想到,single num 两边的数字不等,也就是2 3 4,所以判断singlenum两边不等即可找出

特殊情况,当singlenum出现在首位或者末尾时候,加以特殊判断

class Solution(object):def singleNumber(self, nums):""":type nums: List[int]:rtype: int"""nums.sort()if len(nums) == 1:return nums[0]if nums[0] != nums[1]:return nums[0]if nums[-1] != nums[-2]:return nums[-1]for i in xrange(1, len(nums)-1):if nums[i+1] == nums[i] or nums[i-1] == nums[i]:continuereturn nums[i]

虽然排序了,倒是也accpeted了--

LEETCODE 137.Singel Number ii相关推荐

  1. 【异或】LeetCode 137. Single Number II

    LeetCode 137. Single Number II Solution1:不会做,抄的 博客转载自:http://www.cnblogs.com/grandyang/p/4263927.htm ...

  2. Leetcode 137. Single Number II JAVA语言

    1 2 3 Given an array of integers, every element appears three times except for one, which appears ex ...

  3. Leetcode #137 Single Number II

    题目链接:https://leetcode.com/problems/single-number-ii/ 题意表明有一个数字出现了一次,其他数字出现了三次,那么实现一个模3的计数器即可. 1 clas ...

  4. LeetCode 137.Single Number II 只出现一次的数字 II

    题目描述 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现了三次.找出那个只出现了一次的元素. 说明: 你的算法应该具有线性时间复杂度. 你可以不使用额外空间来实现吗? 示例 1: ...

  5. LeetCode 137. Single Number II--三次异或消除相同的数--C++,Python解法

    题目地址:Single Number II - LeetCode Given a non-empty array of integers, every element appears three ti ...

  6. leetcode 264. Ugly Number II

    传送门 264. Ugly Number II QuestionEditorial Solution My Submissions Total Accepted: 36259 Total Submis ...

  7. 137 Single Number II 数组中除了一个数外,其他的数都出现了三次,找出这个只出现一次的数...

    给定一个整型数组,除了一个元素只出现一次外,其余每个元素都出现了三次.求出那个只出现一次的数. 注意: 你的算法应该具有线性的时间复杂度.你能否不使用额外的内存来实现? 详见:https://leet ...

  8. LEETCODE 136.Singel Number

    Given an array of integers, every element appears twice except for one. Find that single one. Note: ...

  9. [LeetCode]Single Number II

    今天室友推荐了一道LeetCode上面的练习题Single Number II,题目大概的意思是有一个整形的数组,里面只有一个数是出现一次的,其他的数都出现了三次,然后让把这个数找出来. 第一眼看到这 ...

最新文章

  1. 083、Prometheus架构(2019-05-05 周日)
  2. 【JEECG技术文档】表单配置-树形表单
  3. Ignition Vision基本操作
  4. xamarin使用oracle数据库,XamarinSQLite教程在Xamarin.Android项目中使用数据库
  5. php后端技术 有哪些,web后端开发技术有哪些 ?
  6. 安卓逆向学习 之 KGB Messenger的writeup(2)
  7. 编写可读代码的艺术读书整理
  8. 糟糕之至的用户体验——JavaEye你怎么就这么贱!
  9. aras innovator: 分类筛选如何做?
  10. three.js加载和使用纹理-specularMap使用高光贴图创建色彩鲜明的地球(vue中使用three.js77)
  11. 常用排序:冒泡排序与快速排序详解,看完这篇就够了!风马博客
  12. 致 Tapdata 开源贡献者:聊聊 2022 年的进展和新一年的共建计划
  13. python竖着展示诗_十八年-python诗词动画
  14. Linux常用命令英文全称与中文解释 (pwd、su、df、du等)
  15. 新手利用C# 实现简单仿QQ登陆注册功能
  16. EAS BOS 新建单据后新增字段
  17. FigDraw 17. SCI 文章绘图之主成分绘图(pca3d)
  18. 台式电脑显示无法修复计算机,win10系统下提示“自动修复”无法修复你的电脑怎么解决...
  19. Blender精确移动物体轴心
  20. jQuery的下载及安装

热门文章

  1. C# FileInfo(System.IO)
  2. py使用polar绘制霍兰德职业测试雷达图
  3. Alist简单使用指南
  4. 浏览器主页被2345劫持简单处理方法
  5. 02_计算机网络笔记-网络拓扑-交换机-VLAN
  6. Java开源 ERP与客户管理-Sequoia ERP
  7. 设置matlab图像线框,matlab在图像中画长方形(框)
  8. 【福利继续无套路】整理的一系列IT视频
  9. 如何禁止计算机被网络访问,局域网内如何禁止别人访问自己的电脑
  10. 怎么访问到别人的电脑?