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)]
 }
相关推荐
QxQ么么1 小时前
移远通信(桂林)26校招-助理AI算法工程师-面试纪录
人工智能·python·算法·面试
正一品程序员3 小时前
vue项目引入GoogleMap API进行网格区域圈选
前端·javascript·vue.js
Mz12213 小时前
day05 移动零、盛水最多的容器、三数之和
数据结构·算法·leetcode
SoleMotive.3 小时前
如果用户反映页面跳转得非常慢,该如何排查
jvm·数据库·redis·算法·缓存
念越3 小时前
判断两棵二叉树是否相同(力扣)
算法·leetcode·入门
Tongfront3 小时前
前端通用submit方法
开发语言·前端·javascript·react
一 乐4 小时前
农产品销售|农产品供销|基于SprinBoot+vue的农产品供销系统(源码+数据库+文档)
java·前端·javascript·数据库·vue.js·spring boot
sunshine6414 小时前
JS实现悬浮可拖拽vue组件封装
开发语言·前端·javascript
by__csdn4 小时前
Vue 2 与 Vue 3:深度解析与对比
前端·javascript·vue.js·typescript·vue·css3·html5
0***h9424 小时前
TypeScript 与后端开发Node.js
javascript·typescript·node.js