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

【leetcode】169. 多数元素

多数元素

    • 题目
    • 题解
      • 1. 哈希表
      • 2. 摩尔投票

题目

169. 多数元素

给定一个大小为 n 的数组 nums ,返回其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。

你可以假设数组是非空的,并且给定的数组总是存在多数元素。

示例 1:

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

示例 2:

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

题解

1. 哈希表

class Solution:def majorityElement(self, nums: List[int]) -> int:dict = {}n = len(nums)for num in nums:if num not in dict:dict[num] = 1else:dict[num] += 1max_key = 0max_value = 0for key, value in dict.items():if value > max_value:max_key = keymax_value = valuereturn max_key

2. 摩尔投票

class Solution:def majorityElement(self, nums: List[int]) -> int:# 摩尔投票votes = 0for num in nums:if votes == 0:x = numif num == x:votes += 1else:votes -= 1return x
http://www.xdnf.cn/news/14129.html

相关文章:

  • 傅里叶变换的基本思想通俗解释与应用介绍
  • 组件传值的两种用法(父传子)
  • MACD指标
  • 人工智能学习26-BP梯度下降
  • 三菱FX-5U系列入门到精通
  • 代码随想录12|翻转单词|右旋字符串|实现strStr()|重复的子字符串
  • LLMOps——Langfuse
  • 低温对FPGA的核心影响
  • 山东大学软件学院WEB数据管理 复习串讲笔记(2025)
  • 使用 C# 源生成器(Source Generators)进行高效开发:增强 Blazor 及其他功能
  • Git命令与代码仓库管理
  • 皮卡丘靶场通关全教程
  • 中医穴位学习工具推荐,专业经络穴位图解
  • 【Linux】Linux多路复用-poll
  • Redis的list的底层原理
  • java快速打包bat 电脑直接运行 无需从新配置环境
  • C#入门学习笔记 #9(析构器、类声明、访问控制、继承、重写、多态、抽象类、开闭原则)
  • Python惰性函数与技术总结-由Deepseek产生
  • 【零散技术】5分钟完成Odoo18 登陆页面全自定义
  • 50天50个小项目 (Vue3 + Tailwindcss V4) ✨ | AnimatedNavigation(动态导航)
  • 打破长推理迷思:基于困惑度的自适应推理如何实现效率与精度的双赢
  • python训练营day52
  • 【YOLO 系列】基于YOLO的车载摄像头道路标志和车辆目标检测识别系统【python源码+Pyqt5界面+数据集+训练代码】
  • 茶文化部分答案
  • 在docker中部署ollama
  • Linux下成功编译CPU版Caffe的保姆级教程(基于Anaconda Python3.8 包含完整可用Makefile.config文件)
  • Redis集群模式之Redis Cluster(2)
  • 掌握C#枚举:从交通灯看懂状态管理
  • 项目拓展-Jol分析本地对象or缓存的内存占用
  • pdb/sdf转pdbqt错误、pdbqt小分子文件对接蛋白质dock分数为0