2021-07-23 B站观看力扣算法视频第一天
求一个数组出现奇数次的数
- 1.一个数组只有一个数出现奇数次其它都出现偶数次
- 用异或解决
- 同样用hashmap也可以
- 2.一个数组有两个数出现奇数次其它都出现偶数次
- 用位运算
1.一个数组只有一个数出现奇数次其它都出现偶数次
用异或解决
public class EvenTimesOddTimes {public static void main(String[] args) {int[] arr = {1,2,2,3,2,3,2,1,3};printOddTimesNum1(arr);}public static void printOddTimesNum1(int[] arr) {int eor = 0;for (int i : arr) {eor ^= i;}System.out.println(eor);}
}
这样的话时间复杂度为O(n)
同样用hashmap也可以
public static void printOneNum(int[] arr) {HashMap<Integer, Integer> map = new HashMap<>();for (int cur : arr) {map.put(cur,map.getOrDefault(cur,0)+1);}map.forEach((k,v) -> {if (v%2!=0) {System.out.println(k);}});}
2.一个数组有两个数出现奇数次其它都出现偶数次
用位运算
//含有两个奇数public static void printOddTimesNum2(int[] arr) {int eor = 0;for (int cur : arr) {eor ^= cur;}//eor = a^b//eor != 0//eor必有一位含有1int rightOne = rOneNum(eor); //提取最右侧的1int onlyOne = 0; //eor'for (int cur : arr) {if (rOneNum((cur & rightOne))==rightOne)onlyOne ^= cur;}System.out.println(onlyOne+" "+(eor ^ onlyOne));}//该函数求最右边的1public static int rOneNum(int num) {return num & (~num + 1);}```
![在这里插入图片描述](https://img-blog.csdnimg.cn/2e608c5b8cf44298bda7b069ac6bfb56.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDYyOTA1NA==,size_16,color_FFFFFF,t_70)
记录一下 左神还是牛逼的
2021-07-23 B站观看力扣算法视频第一天相关推荐
- 程序员面试需要刷力扣算法题吗
这里写目录标题 1. 程序员面试需要刷力扣算法题吗 1.1. 算法题的一些特征 1.2. 为什么要考查算法 1.3. 目前面试主要考查 3 类 1. 程序员面试需要刷力扣算法题吗 1.1. 算法题的一 ...
- LeetCode 力扣算法题解汇总,All in One
作者: 负雪明烛 id: fuxuemingzhu 个人博客: https://fuxuemingzhu.cn 关键词:LeetCode,力扣,算法,题解,汇总,解析 把自己刷过的所有题目做一个整理, ...
- 力扣算法1~10题(js)
标题 力扣算法 文章目录 标题 1.贩卖柠檬水,能否正确找零 错误 思路一: 解法一 缺点:耗时太长 解法二(大佬解法) 2.返回nums中和为target的两个数的下标 解法 3.两数相加 思路与算 ...
- 力扣算法 509. 斐波那契数 70. 爬楼梯 746. 使用最小花费爬楼梯
学习内容 力扣算法 509. 斐波那契数 70. 爬楼梯 746. 使用最小花费爬楼梯 具体内容 509. 斐波那契数 斐波那契数,通常用 F(n) 表示,形成的序列称为 斐波那契数列 .该数列由 0 ...
- 312戳气球——力扣算法系列2020.07.19 Python
第25天 2020.07.19 周日 难度系数:困难 题目:有n个气球,编号为0到n-1,每个气球上都标有一个数字,这些数字存在数组nums中. 现在要求你戳破所有的气球.如果你戳破气球i,就可以获得 ...
- 力扣算法题—042接雨水
1 #include"000库函数.h" 2 //一点头绪都没有 3 //然后就自己按自己的意思来一遍 4 //好像没有用算法 5 //16ms,让我激动一把 6 7 class ...
- 力扣算法之两矩形求和
原题目 223. 矩形面积 给你 二维 平面上两个 由直线构成的 矩形,请你计算并返回两个矩形覆盖的总面积. 每个矩形由其 左下 顶点和 右上 顶点坐标表示: 第一个矩形由其左下顶点 (ax1, ay ...
- 力扣1024视频拼接
1.1024. 视频拼接 来源力扣解析:1024力扣题解 难度中等261 你将会获得一系列视频片段,这些片段来自于一项持续时长为 time 秒的体育赛事.这些片段可能有所重叠,也可能长度不一. 使用数 ...
- 力扣算法题-19.秋叶收藏集 C语言实现
题目 小扣出去秋游,途中收集了一些红叶和黄叶,他利用这些叶子初步整理了一份秋叶收藏集 leaves, 字符串 leaves 仅包含小写字符 r 和 y, 其中字符 r 表示一片红叶,字符 y 表示一片 ...
最新文章
- er图主码外码怎么看_霸屏了!因为这个老师,广科er纷纷表示要转专业了
- javascript中使用重载
- wpa_supplicant 详解(9) - 4 way handshake
- Luogu P1108 低价购买 DP
- python数据科学-单变量数据分析
- 蓝桥杯JAVA---2013---B----世纪末的星期
- 服务器并发性能报告,一般的服务器瞬时并发应该怎么样才算是合格呢?
- vivo S10系列正式发布 引领“自然美”自拍潮流
- hibernate批量上传
- softmax回归的从零开始实现
- Xcode9 调整模拟器大小
- 如何一键开通局域网共享
- [原创] 适合新手的转手绘教程[ JJ ]
- inssider序列号_inSSIDer v4.2.1.109完美注册版
- 液晶屏的接口信号RGB_TTL、LVDS、MIPI
- 线性代数学习笔记(一)——二阶和三阶行列式
- 使用BeautifulSoup爬取豆瓣电影排行榜
- QlikView处理数据
- 16、Mediator 仲裁者模式
- 用 Uno Platform 构建一个 Kanban-style Todo App
热门文章
- 互联网各大公司职级和薪资一览
- 软件测试面试总结——常见的面试问题
- pytorch统计矩阵非0的个数_PyTorch常见的12坑
- mysql优化零基础_MySQL8数据库 | MySQL调优|MySQL底层原理|MySQL零基础新手教程
- oracle引号的嵌套,3.4.2 在一个直接量字符串中嵌入单引号
- 一周成python大神_python大神进阶路线
- mysql 多行转换多列 列不确定_多行转多列,行数和列数不确定
- 单片机机器周期怎么计算公式_什么是晶振,对于单片机来说它有什么重要作用?...
- 如何用计算机完成一片文稿制作,怎样在家用电脑上制作幻灯片?
- android 画板菜单,Android画板实现