首页 > 其他分享 >leecode 169. 多数元素

leecode 169. 多数元素

时间:2024-07-11 12:56:50浏览次数:6  
标签:count nums 元素 示例 leecode 169 数组 多数

 

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

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

 

示例 1:

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

示例 2:

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

思想:在排序后,出现次数超过n/2的数一定在中间(向下取整)//暴力解法

        sort(nums.begin(),nums.end());
        auto it=nums.begin()+nums.size()/2;
        return *it;

正经:投票 当数字重复,count+1,不同数字出现,count-1,当count为0,更换数字

int candidate=0,count=0;
        for(int i=0;i<nums.size();i++){
            if(count==0){
                candidate=nums[i];
                count++;
            }
            else{
                if(nums[i]==candidate) count++;
                else count--;
            }
        }
        return candidate;

 

标签:count,nums,元素,示例,leecode,169,数组,多数
From: https://www.cnblogs.com/iceforever7/p/18295935

相关文章

  • react hooks实现对元素拖拽及鼠标滚轮缩放
    page.jsximport'./index.less';import{useDrag,useZoom}from'./hooks';constDragZoom=()=>{const{handleMouseDown,handleMouseMove,handleMouseUp}=useDrag();const{handleWheel,scale}=useZoom();re......
  • G65 线性基+贪心法 P4570 [BJWC2011] 元素
    视频链接: P4570[BJWC2011]元素-洛谷|计算机科学教育新生态(luogu.com.cn)//线性基O(60*n)#include<iostream>#include<cstring>#include<algorithm>usingnamespacestd;#defineLLlonglongconstLLN=1005;intn,m;structnode{LLnum,val;}a......
  • Day3| 203.移除链表元素 & 707.设计链表 & 206.反转链表
    前两天发烧了,这几天没更的后续会补齐链表结构如下classListNode{intval;ListNodenext;ListNode(){}ListNode(intval){this.val=val;}ListNode(intval,ListNodenext){this.val=val;this.next......
  • 排版元素
    排版元素行级元素块引用超链接图片可通过复制粘贴或拖拽来上传图片;上传后的图片可通过拖拽进行大小调整。​​加粗倾斜下划线删除线标记上标下标快捷键标签#行级代码$a^2+b^2=\color{red}c^2$备注(这是一个行级备注)颜色1......
  • 203. 移除链表元素
    给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val==val 的节点,并返回 新的头节点 。示例1:输入:head=[1,2,6,3,4,5,6],val=6输出:[1,2,3,4,5]示例2:输入:head=[],val=1输出:[]示例3:输入:head=[7,7,7,7],val=7输......
  • 比较两个数组中是否有相同的元素
    双重遍历循环太过复杂点击查看代码letarr1=[1,2,3];letarr2=[1,2,3,4];lethasCommonElement=false;for(leti=0;i<arr1.length;i++){for(letj=0;j<arr2.length;j++){if(arr1[i]===arr2[j]){hasCommonElement=true;......
  • 第三章 MATLAB矩阵的操作的目录【向量元素的引用】
    向量元素的引用有两种:(1)提取向量中的单个元素(2)提取向量中的多个元素可以利用向量中包含的元素个数来描述一个向量的大小。在MATLAB中,使用length函数或numel函数来计算向量中包含的元素个数。向量的元素a1a2a3......an索引(下标)123n在MATLAB中,向量......
  • std::vector 中查找某个元素是否存在
    std::vector中不存在直接查找某个元素是否存在的方法,一般是通过<algorithm>中的std::find,std::find_if,std::count,std::count_if等方法的返回值来判断对应元素是否存在。如当vector中存储的元素为double类型时,需要设定其精度,判断代码如下#include<vector>#include......
  • canvas—元素样式设置
    一、色彩:fillStyle=colorstrokeStyle=color二、透明度: 三、线型:设置线条宽度:lineWidth=value设置线条末端样式:lineCap=type设定线条与线条间接合处的样式:lineJoin=type限制当两条线相交时交接处最大长度:miterLimit=value ......
  • spring-14-Spring 提供集合的配置元素
    <list>类型用于注入一列值,允许有相同的值。   对于Spring框架来说,<list>类型是一种用于注入一列值的配置元素。它允许您在Spring应用程序上下文中创建一个列表,并将它注入到一个bean的属性中。这个列表可以包含任意数量的对象,并允许出现相同的值。下面是一个完整的示例......