LeetCode 热题 100 JavaScript -169多数元素

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

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

示例 1:

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

输出:3

示例 2:

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

1、摩尔计数法

javascript 复制代码
var majorityElement = function(nums) {
 var candidate = nums[0]
 var count = 1
 for(var i = 1;i < nums.length;i++){
     if(nums[i] == candidate){
         count+=1
     }else{
         count -=1
         if(count==0){
             candidate = nums[i+1]
         }
     }

 }
 return candidate

};

2、调api

javascript 复制代码
 var majorityElement = function(nums) {
     var num =nums.sort()
     return num[Math.floor(num.length / 2)]
 }
相关推荐
leafyyuki14 分钟前
在 Vue 项目中玩转 FullCalendar:从零搭建可交互的事件日历
前端·javascript·vue.js
豆苗学前端38 分钟前
彻底讲透浏览器缓存机制,吊打面试官
前端·javascript·面试
zone77391 小时前
006:RAG 入门-面试官问你,RAG 为什么要切块?
后端·算法·面试
swipe1 小时前
箭头函数与 this 面试题深度解析:从原理到实战
前端·javascript·面试
进击的尘埃3 小时前
拖拽搭建场景下的智能布局算法:栅格吸附、参考线与响应式出码
javascript
小猪努力学前端3 小时前
基于PixiJS的试玩广告开发-续篇
前端·javascript·游戏
wuhen_n3 小时前
v-model 的进阶用法:搞定复杂的父子组件数据通信
前端·javascript·vue.js
wuhen_n3 小时前
TypeScript 深度加持:让你的组合式函数拥有“钢筋铁骨”
前端·javascript·vue.js
滕青山3 小时前
基于 ZXing 的 Vue 在线二维码扫描器实现
前端·javascript·vue.js
CoovallyAIHub3 小时前
OpenClaw 近 2000 个 Skills,为什么没有一个好用的视觉检测工具?
深度学习·算法·计算机视觉