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

深圳深圳建设网站网络优化师

深圳深圳建设网站,网络优化师,上海专业网站设计制作,wordpress文章显示url地址❓ 剑指 Offer 39. 数组中出现次数超过一半的数字 难度:简单 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。 你可以假设数组是非空的,并且给定的数组总是存在多数元素。 示例 1: 输入: [1, 2, 3, 2, 2, 2, 5, 4, 2] 输…

❓ 剑指 Offer 39. 数组中出现次数超过一半的数字

难度:简单

数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。

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

示例 1:

输入: [1, 2, 3, 2, 2, 2, 5, 4, 2]
输出: 2

限制

  • 1 <= 数组长度 <= 50000

注意:本题 169. 多数元素 相同。

💡思路:投票问题

多数投票问题,可以利用 Boyer-Moore Majority Vote Algorithm 来解决这个问题,使得时间复杂度为 O ( n ) O(n) O(n)

使用 cnt 来统计一个元素出现的次数:

  • 当遍历到的元素和统计元素相等时,令 cnt++,否则令 cnt--
  • 如果前面查找了 i 个元素,且 cnt == 0,说明前 i 个元素没有 ans,或者有 ans,但是出现的次数少于 i / 2 ,因为如果多于 i / 2 的话 cnt 就一定不会为 0 。此时剩下的 n - i 个元素中,ans 的数目依然多于 (n - i) / 2,因此继续查找就能找出 ans

🍁代码:(C++、Java)

C++

class Solution {
public:int majorityElement(vector<int>& nums) {int ans = nums[0], cnt = 0;for(int num : nums) {ans  = cnt == 0 ? num : ans;cnt = ans == num ? ++cnt : --cnt;}return ans;}
};

Java

class Solution {public int majorityElement(int[] nums) {int ans = nums[0], cnt = 0;for(int num : nums) {ans  = cnt == 0 ? num : ans;cnt = ans == num ? ++cnt : --cnt;}return ans;}
}

🚀 运行结果:

在这里插入图片描述

🕔 复杂度分析:

  • 时间复杂度 O ( n ) O(n) O(n),其中 n 为数组的长度,Boyer-Moore 算法只对数组进行了一次遍历。。
  • 空间复杂度 O ( 1 ) O(1) O(1),只需要常数级别的额外空间。

题目来源:力扣。

放弃一件事很容易,每天能坚持一件事一定很酷,一起每日一题吧!
关注我LeetCode主页 / CSDN—力扣专栏,每日更新!

注: 如有不足,欢迎指正!

http://www.bdqn1.cn/news/151.html

相关文章:

  • 网站建设模板源码哈尔滨百度网络推广
  • 做项目搭建网站 构建数据库学生个人网页制作
  • 平江做网站的公司百度公司怎么样
  • 南阳做网站 汉狮公司百度网页推广
  • 做网站网页的公司北京出大大事了
  • 如何分析竞争对手的网站百度下载免费安装到桌面
  • 一般做外贸上什么网站武汉网站排名提升
  • 网站排名下降原因描述优化方法
  • 怎么在公安局网站上做企业备案春哥seo博客
  • 临沂网站制作页面中国百强县市榜单
  • ai做网站页面建多大的电商推广联盟
  • jsp获取网站域名流量推广app
  • 做采集网站难不北京快速优化排名
  • 为什么无法安装wordpress廊坊seo排名扣费
  • 阿拉巴巴开店网站建设站长工具果冻传媒
  • 珲春建设银行网站哪个平台可以接推广任务
  • 重庆机有哪些网站建设公司网页开发流程
  • 网站怎样做微信公众号关键词搜索热度查询
  • 淘宝便宜的团购网站建设公司个人怎么做网络推广
  • 做国际网站的上海高端网站公司谷歌搜索排名
  • 可道网站建设百度高级搜索怎么用
  • 长春火车站到龙嘉机场动车时刻表seo优化包括哪些内容
  • 必应网站建设cba赛程
  • 如何搭建钓鱼网站宁波seo网络推广多少钱
  • 镇江网站建设报价长治seo
  • 合肥商城网站建设黑帽seo
  • 做宠物网站赚钱吗搜索引擎营销简称为
  • 珠海网站制作首页seo优化培训课程
  • 新疆乌鲁木齐最新新闻seo教程网
  • 武汉市东西湖区建设局官方网站bt磁力搜索