PHP 计算至少是其他数字两倍的最大数的实现代码


Posted in PHP onMay 26, 2020

计算至少是其他数字两倍的最大数

在一个给定的数组nums中,总是存在一个最大元素 。

查找数组中的最大元素是否至少是数组中每个其他数字的两倍。

如果是,则返回最大元素的索引,否则返回-1。

示例 1:

输入: nums = [3, 6, 1, 0]
输出: 1
解释: 6是最大的整数, 对于数组中的其他整数,
6大于数组中其他元素的两倍。6的索引是1, 所以我们返回1.

示例 2:

输入: nums = [1, 2, 3, 4]
输出: -1
解释: 4没有超过3的两倍大, 所以我们返回 -1.

提示:

  • nums 的长度范围在[1, 50].
  • 每个 nums[i] 的整数范围在 [0, 100].

来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/largest-number-at-least-twice-of-others

解题思路

循环一遍,记录最大值,次大值,最后判断如果最大值大于次大值 * 2,则返回最大值的 index,否则返回 -1

PHP 实现

class Solution {
 /**
  * @param Integer $num
  * @return Boolean
  */
 function dominantIndex($nums) {
  $count = count($nums);
  if ($count === 1) return 0;
  $max = 0;
  $subMax = 0;
  $index = 0;
  for($i = 0; $i < $count; $i++) {
   if($nums[$i] >= $max){
    $subMax = $max;
    $max = $nums[$i];
    $index = $i;
   } else if ($nums[$i] > $subMax) {
    $subMax = $nums[$i];
   }
  }
  return ($max >= $subMax * 2) ? $index : -1;
 }
}

总结

到此这篇关于PHP 计算至少是其他数字两倍的最大数的文章就介绍到这了,更多相关PHP 计算至少是其他数字两倍的最大数内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

PHP 相关文章推荐
扩展你的 PHP 之入门篇
Dec 04 PHP
PHP令牌 Token改进版
Jul 18 PHP
PHP 文件扩展名 获取函数
Jun 03 PHP
Ajax PHP 边学边练 之三 数据库
Nov 26 PHP
PHP学习之数组值的操作
Apr 17 PHP
PHP 字符串正则替换函数preg_replace使用说明
Jul 15 PHP
php遍历目录输出目录及其下的所有文件示例
Jan 27 PHP
PHP读取RSS(Feed)简单实例
Jun 12 PHP
PHP和Shell实现检查SAMBA与NFS Server是否存在
Jan 07 PHP
我整理的PHP 7.0主要新特性
Jan 07 PHP
在Laravel中使用DataTables插件的方法
May 29 PHP
Laravel实现ApiToken认证请求
Oct 14 PHP
tp5.1 框架数据库-数据集操作实例分析
May 26 #PHP
tp5.1 框架路由操作-URL生成实例分析
May 26 #PHP
tp5.1 框架join方法用法实例分析
May 26 #PHP
tp5.1框架数据库子查询操作实例分析
May 26 #PHP
tp5.1 框架数据库常见操作详解【添加、删除、更新、查询】
May 26 #PHP
Laravel 修改验证异常的响应格式实例代码详解
May 25 #PHP
tp5.1 框架查询表达式用法详解
May 25 #PHP
You might like
JAVA/JSP学习系列之二
2006/10/09 PHP
在命令行下运行PHP脚本[带参数]的方法
2010/01/22 PHP
基于php split()函数的用法详解
2013/06/05 PHP
PHP中strlen()和mb_strlen()的区别浅析
2014/06/19 PHP
字符串长度函数strlen和mb_strlen的区别示例介绍
2014/09/09 PHP
JQuery SELECT单选模拟jQuery.select.js
2009/11/12 Javascript
Jquery css函数用法(判断标签是否拥有某属性)
2011/05/28 Javascript
网页打开自动最大化的js代码
2012/08/22 Javascript
jquery插件之定时查询待处理任务数量
2014/05/01 Javascript
jquery实现无限分级横向导航菜单的方法
2015/03/12 Javascript
javascript基于DOM实现权限选择实例分析
2015/05/14 Javascript
js如何打印object对象
2015/10/16 Javascript
基于JS实现密码框(password)中显示文字提示功能代码
2016/05/27 Javascript
nodejs redis 发布订阅机制封装实现方法及实例代码
2016/12/15 NodeJs
面试常见的js算法题
2017/03/23 Javascript
vue的状态管理模式vuex
2017/11/30 Javascript
Vue.js中Line第三方登录api的实现代码
2020/06/29 Javascript
[01:20:30]OG vs LGD 2018国际邀请赛淘汰赛BO3 第四场 8.26
2018/08/30 DOTA
[01:01:14]完美世界DOTA2联赛PWL S2 SZ vs Rebirth 第一场 11.21
2020/11/23 DOTA
flask中主动抛出异常及统一异常处理代码示例
2018/01/18 Python
python面向对象多线程爬虫爬取搜狐页面的实例代码
2018/05/31 Python
用django-allauth实现第三方登录的示例代码
2019/06/24 Python
python实现生成Word、docx文件的方法分析
2019/08/30 Python
Canvas 文本转粒子效果的实现代码
2019/02/14 HTML / CSS
美国最受欢迎的度假目的地优惠套餐:BookVIP
2018/09/27 全球购物
Lookfantastic俄罗斯:欧洲在线化妆品零售商
2019/08/06 全球购物
班会关于环保演讲稿
2013/12/29 职场文书
2014年三八妇女节活动方案
2014/02/28 职场文书
管理部副部长岗位职责范文
2014/03/09 职场文书
美术第二课堂活动总结
2014/07/08 职场文书
安全标兵事迹材料
2014/08/17 职场文书
2014年村官工作总结
2014/11/24 职场文书
2014年机关后勤工作总结
2014/12/16 职场文书
2015年党员自评材料
2014/12/17 职场文书
酒店财务部岗位职责
2015/04/14 职场文书
Python 如何利用ffmpeg 处理视频素材
2021/11/27 Python