当前位置: 首页 > news >正文

贵阳网站建设app开发上海专业的seo推广咨询电话

贵阳网站建设app开发,上海专业的seo推广咨询电话,vps做vpn svn和网站,bootstrap手机模板目录 1. 只出现一次的数字 Single Number 2. 只出现一次的数字 II Single Number II 3. 只出现一次的数字 III Single Number III 🌟 每日一练刷题专栏 🌟 Golang每日一练 专栏 Python每日一练 专栏 C/C每日一练 专栏 Java每日一练 专栏 leetcod…

目录

1. 只出现一次的数字 Single Number

2. 只出现一次的数字 II Single Number II

3. 只出现一次的数字 III Single Number III

🌟 每日一练刷题专栏 🌟

Golang每日一练 专栏

Python每日一练 专栏

C/C++每日一练 专栏

Java每日一练 专栏


leetcode题号: 136, 137, 260

1. 只出现一次的数字 Single Number

给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。

说明:

你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?

示例 1:

输入: [2,2,1]
输出: 1

示例 2:

输入: [4,1,2,1,2]
输出: 4

代码1: 用哈希表计数

def singleNumber(nums):hash_map = {}for num in nums:if num in hash_map:hash_map[num] += 1else:hash_map[num] = 1for num, count in hash_map.items():if count == 1:return numreturn 0if __name__ == '__main__':nums = [2, 2, 1]print(singleNumber(nums))nums = [4, 1, 2, 1, 2]print(singleNumber(nums))

代码2: 异或运算

def singleNumber(nums):res = 0for num in nums:res ^= numreturn resif __name__ == '__main__':nums = [2, 2, 1]print(singleNumber(nums))nums = [4, 1, 2, 1, 2]print(singleNumber(nums))

代码3: 算术运算

def singleNumber(nums):hash_map = {}sum1, sum2 = 0, 0for num in nums:if num in hash_map:hash_map[num] += 1else:hash_map[num] = 1sum1 += numfor num, count in hash_map.items():sum2 += 2 * numreturn sum2 - sum1if __name__ == '__main__':nums = [2, 2, 1]print(singleNumber(nums))nums = [4, 1, 2, 1, 2]print(singleNumber(nums))

输出:

1
4


2. 只出现一次的数字 II Single Number II

给你一个整数数组 nums ,除某个元素仅出现 一次 外,其余每个元素都恰出现 三次 。请你找出并返回那个只出现了一次的元素。

示例 1:

输入:nums = [2,2,3,2]
输出:3

示例 2:

输入:nums = [0,1,0,1,0,1,99]
输出:99

提示:

  • 1 <= nums.length <= 3 * 10^4
  • -2^31 <= nums[i] <= 2^31 - 1
  • nums 中,除某个元素仅出现 一次 外,其余每个元素都恰出现 三次

进阶:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?

代码1: 用哈希表计数

def singleNumber(nums):hash_map = {}for num in nums:if num in hash_map:hash_map[num] += 1else:hash_map[num] = 1for num, count in hash_map.items():if count == 1:return numreturn 0if __name__ == '__main__':nums = [2, 2, 3, 2]print(singleNumber(nums))nums = [0, 1, 0, 1, 0, 1, 99]print(singleNumber(nums))

代码2: 位运算

def singleNumber(nums):res = 0for i in range(64):sum = 0for num in nums:sum += (num >> i) & 1if sum % 3 != 0:res |= 1 << ireturn resif __name__ == '__main__':nums = [2, 2, 3, 2]print(singleNumber(nums))nums = [0, 1, 0, 1, 0, 1, 99]print(singleNumber(nums))

 代码3: 算术运算

def singleNumber(nums):nums_set = set(nums)sum1 = sum(nums)sum2 = 3 * sum(nums_set)return (sum2 - sum1) // 2if __name__ == '__main__':nums = [2, 2, 3, 2]print(singleNumber(nums))nums = [0, 1, 0, 1, 0, 1, 99]print(singleNumber(nums))

输出:

3
99


3. 只出现一次的数字 III Single Number III

给定一个整数数组 nums,其中恰好有两个元素只出现一次,其余所有元素均出现两次。 找出只出现一次的那两个元素。你可以按 任意顺序 返回答案。

进阶:你的算法应该具有线性时间复杂度。你能否仅使用常数空间复杂度来实现?

示例 1:

输入:nums = [1,2,1,3,2,5]
输出:[3,5]
解释:[5, 3] 也是有效的答案。

示例 2:

输入:nums = [-1,0]
输出:[-1,0]

示例 3:

输入:nums = [0,1]
输出:[1,0]

提示:

  • 2 <= nums.length <= 3 * 10^4
  • -2^31 <= nums[i] <= 2^31 - 1
  • 除两个只出现一次的整数外,nums 中的其他数字都出现两次

代码1: 用哈希表计数

def singleNumber(nums):m, res = {}, []for num in nums:m[num] = m.get(num, 0) + 1for num, count in m.items():if count == 1:res.append(num)return resif __name__ == '__main__':nums = [1, 2, 1, 3, 2, 5]print(singleNumber(nums))nums = [-1, 0]print(singleNumber(nums))nums = [0, 1]print(singleNumber(nums))

代码2: 位运算分组异或

def singleNumber(nums):xor = 0for num in nums:xor ^= nummask = 1while (xor & mask) == 0:mask <<= 1a, b = 0, 0for num in nums:if num & mask != 0:a ^= numelse:b ^= numreturn [a, b]if __name__ == '__main__':nums = [1, 2, 1, 3, 2, 5]print(singleNumber(nums))nums = [-1, 0]print(singleNumber(nums))nums = [0, 1]print(singleNumber(nums))

输出:

[3 5]
[-1 0]
[1 0]


🌟 每日一练刷题专栏 🌟

持续,努力奋斗做强刷题搬运工!

👍 点赞,你的认可是我坚持的动力! 

🌟 收藏,你的青睐是我努力的方向! 

评论,你的意见是我进步的财富!  

 主页:https://hannyang.blog.csdn.net/

Golang每日一练 专栏

Python每日一练 专栏

C/C++每日一练 专栏

Java每日一练 专栏

http://www.hkea.cn/news/260177/

相关文章:

  • 网站建设与管理作业镇江推广公司
  • 域名申请好后 如何建设网站网站权重划分
  • 佛山百度网站快速优化网络营销推广工具
  • 建一个网站需要哪些人广州seo网站推广公司
  • 建设银行etc官方网站搜索引擎优化的七个步骤
  • 做网站需要花钱吗海南百度推广运营中心
  • 做的网站显示图片很慢百度运营公司
  • 青州哪里做网站公司推广渠道
  • 网站面包屑导航怎么做的网推接单平台有哪些
  • 宜昌网站建设兼职百度关键词排名软件
  • 如何让百度快照找到自己的网站营销策划方案ppt模板
  • php网站超市广告软文是什么意思
  • b2c跨境电商宣城网站seo
  • 网站建设一流公司免费网站开发平台
  • 网站开发模式名词外贸谷歌优化
  • 网站素材 下载产品推广渠道
  • 网站后台维护怎么做seo专员工资一般多少
  • 中国网站推广黄页名录微商推广哪家好
  • 哈尔滨网站开发电话电商培训基地
  • 如何用php数据库做网站搜索seo优化托管
  • 中国城乡建设部人力网站首页优化落实疫情防控
  • 做网站到底能不能赚钱网络优化工程师前景
  • 乌镇网站建设标书百度站长工具域名查询
  • 制作公司网站价格腾讯广告代理商加盟
  • 大学生活动网站开发文案苏州seo门户网
  • 阿里云认证网站建设题库seo助理
  • 凤岗网站仿做靠谱seo外包定制
  • xampp安装wordpress说明徐州seo外包
  • 啥网站都能看的浏览器下载百度收录查询工具
  • 福田附近公司做网站建设哪家效益快奶糖 seo 博客