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

力扣 hot100 Day64

169. 多数元素

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

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

class Solution {
public:int majorityElement(vector<int>& nums) {int count = 0;int candidate = nums[0];for (int num : nums) {if (count == 0) {candidate = num;}count += (num == candidate) ? 1 : -1;}return candidate;}
};

摩尔投票法

维护一个候选数及其获票数,从头开始计票,相同加一,不同减一,票数清零则从下一个数继续计票

非目标数肯定不能留到最后,因为前面消耗的目标数最多一半,所以后面至少也还有过半的目标数,所以最后留下的一定是目标数

http://www.lryc.cn/news/608634.html

相关文章:

  • 六、Linux核心服务与包管理
  • 若没有安全可靠性保障,对于工程应用而言,AI或许就是大玩具吗?
  • Python黑科技:用@property优雅管理你的属性访问
  • ThinkPHP5x,struts2等框架靶场复现
  • 控制建模matlab练习10:滞后补偿器
  • 吴恩达【prompt提示词工程】学习笔记
  • MCP革命:Anthropic如何重新定义AI与外部世界的连接标准
  • 2.4.1-2.4.3控制范围-控制进度-控制成本
  • STM32复位电路解析
  • Rustdesk中继服务器搭建(windows 服务器)
  • 蜂群优化算法:智能优化新突破
  • 联想笔记本安装系统之后一直转圈圈的问题了?无法正常进入到系统配置界面,原来是BIOS中的VMD问题
  • VUE2 学习笔记16 插槽、Vuex
  • 09.Redis 常用命令
  • C++23 Concepts:用类型约束重构泛型编程的终极方案
  • 选择排序原理与C语言实现详解
  • redis的Java客户端(SpringDataRedis)
  • 深入掌握 ExcelJS:Node.js 中强大的 Excel 操作库
  • 2、docker容器命令 | 信息查看
  • 关于Web前端安全之XSS攻击防御增强方法
  • RAG-Semantic Chunking
  • cursor 使用方法
  • CVE-2025-5947 漏洞场景剖析
  • Claude Code氛围编程经历: 6周干了三年的活
  • vscode的Remote-SSH插件配置SSH主机方法
  • python工具方法51 视频数据的扩充(翻转、resize、crop、re_fps)
  • N1——one-hot编码
  • ABAP SQL更新DB小技巧 WITH INDICATORS
  • [硬件电路-151]:数字电路 - 模拟电路与数字电路的本质
  • MySQL Redo Log