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

LeetCode 刷题【136. 只出现一次的数字、137. 只出现一次的数字 II】

136. 只出现一次的数字

自己做

解1:排序

class Solution {public int singleNumber(int[] nums) {Arrays.sort(nums);int i = 0;int j = 1;int z = 2;while(z < nums.length){if(nums[j] != nums[i] && nums[j] != nums[z])return nums[j];i = j;j = z;z++;}//最后一个元素是单独元素if(j < nums.length && nums[j] != nums[i])return nums[j];//第一个元素的单独元素return nums[0];}
}

解2:哈希表

class Solution {public int singleNumber(int[] nums) {Map<Integer, Integer> m = new HashMap();for(int i = 0; i < nums.length; i++)if(!m.containsKey(nums[i]))m.put(nums[i], 1);else{int num = m.get(nums[i]);// System.out.println(num);if(num == 1)m.remove(nums[i]);elsem.put(nums[i], num + 1);}Map.Entry<Integer, Integer> firstEntry = m.entrySet().iterator().next();return firstEntry.getKey();}
}

看题解

 官方题解

class Solution {public int singleNumber(int[] nums) {int single = 0;for (int num : nums) {single ^= num;}return single;}
}

​​​​​​137. 只出现一次的数字 II

自己做

解:哈希表

class Solution {public int singleNumber(int[] nums) {Map<Integer, Integer> m = new HashMap();for(int i = 0; i < nums.length; i++)if(!m.containsKey(nums[i]))m.put(nums[i], 1);else{int num = m.get(nums[i]);// System.out.println(num);if(num == 2)m.remove(nums[i]);elsem.put(nums[i], num + 1);}Map.Entry<Integer, Integer> firstEntry = m.entrySet().iterator().next();return firstEntry.getKey();}
}

看题解

官方题解

class Solution {public int singleNumber(int[] nums) {int ans = 0;for (int i = 0; i < 32; ++i) {int total = 0;for (int num: nums) {total += ((num >> i) & 1);}if (total % 3 != 0) {ans |= (1 << i);}}return ans;}
}

http://www.dtcms.com/a/541861.html

相关文章:

  • 信宜手机网站建设公司免费的wordpress账号
  • 6 个 Docker 高级功能
  • AGENT 和自动化工作流的区別
  • 【计算机软件资格考试】软考案例分析题及解析模拟题9
  • 描述一下网站建设的基本流程深圳建设网站费用
  • 长沙网站设计服务商上海网站建设科技公司
  • Langchain从零开始到应用落地案例[AI智能助手]【5】---实现基于FastAPI+Langchain+ocr实现上下文对话大模型对话接口
  • 手机微网站与微官网苏州绿叶网站建设
  • 【研究生随笔】Pytorch中的卷积神经网络(2)
  • 宁波百度做网站的公司哪家好泰州专业做网站公司
  • 【AES加密】AES加密算法实现(附代码):1 AES头文件的书写
  • Linux入门2(1/3)
  • 哪个网站可以做条形码毛坯房最便宜装修方法
  • 北京塞车网站建设wordpress安装到万网
  • 包头企业做网站能免费建网站吗
  • C++ 字符串型
  • ELK运维之路(定时清理索引)
  • 行业协会网站模板网站按天扣费优化推广
  • 网站开发提高加载速度网站备案服务内容
  • 硬件电路RS485通信EMC 设计
  • Visual Basic 随机文件
  • 选服务好的网站建设公司网易企业邮箱app叫什么名字
  • 比百度更好的网站网站后台怎么做友情链接
  • 网站建站侵权怎么办推荐一下做图文的网站
  • Java 多线程:从单体到分布式的演进与陷阱
  • JAVA中的注解是什么玩意
  • 能不能上传网站再备案陕西西安网站设计公司
  • 各大网站注册记录商城建站报价方案
  • 注入漏洞网站源码程序开发的基本步骤是什么?
  • 超硬核c语言编程随想笔记:深挖cint**二级指针-核心多级指针的内存陷阱,彻底终结多级指针恐惧症