力扣(LeetCode)每日一题 137. 只出现一次的数字 II

た 入场券 2024-02-21 06:57 169阅读 0赞

题目链接

https://leetcode.cn/problems/single-number-ii/description/?envType=daily-question&envId=2023-10-15

我的思路:

  1. class Solution {
  2. public int singleNumber(int[] nums) {
  3. //只有一个元素时
  4. if(nums.length==1){
  5. return nums[0];
  6. }
  7. Arrays.sort(nums);//排序
  8. //排序后,分三种情况,一种是一次数在第一个位置,一种是一次数在最后一个位置,一种是一次数在中间位置
  9. //头
  10. if(nums[0]!=nums[1]){
  11. return nums[0];
  12. }
  13. //中间
  14. for(int i=1;i<nums.length-2;i=i+3){
  15. if(nums[i-1] == nums[i] && nums[i] == nums[i+1]){
  16. continue;
  17. }else{
  18. return nums[i-1];
  19. }
  20. }
  21. //尾
  22. return nums[nums.length-1];
  23. }
  24. }

e41fe8913d2643a1bff61bf41cee4aba.png

发表评论

表情:
评论列表 (有 0 条评论,169人围观)

还没有评论,来说两句吧...

相关阅读

    相关 137. 出现数字 II

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

    相关 137. 出现数字

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