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 相关文章推荐
分页显示Oracle数据库记录的类之二
Oct 09 PHP
文章推荐系统(二)
Oct 09 PHP
php 无限级分类学习参考之对ecshop无限级分类的解析 带详细注释
Mar 23 PHP
在smarty模板中使用PHP函数的方法
Apr 23 PHP
PHP统计二维数组元素个数的方法
Nov 12 PHP
PHP常用数组函数介绍
Jul 28 PHP
在WordPress中使用wp-cron插件来设置定时任务
Dec 10 PHP
PHP实现批量检测网站是否能够正常打开的方法
Aug 23 PHP
PHP策略模式定义与用法示例
Jul 27 PHP
PHP实现从上往下打印二叉树的方法
Jan 18 PHP
php 可变函数使用小结
Jun 12 PHP
laravel添加角色和模糊搜索功能的实现代码
Jun 22 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
PHP脚本的10个技巧(5)
2006/10/09 PHP
php google或baidu分页代码
2009/11/26 PHP
基于php冒泡排序算法的深入理解
2013/06/09 PHP
PHP 使用pcntl和libevent 实现Timer功能
2013/10/27 PHP
详解PHP归并排序的实现
2016/10/18 PHP
php简单处理XML数据的方法示例
2017/05/19 PHP
PHP实现的链式队列结构示例
2017/09/15 PHP
php 读写json文件及修改json的方法
2018/03/07 PHP
TP5框架实现签到功能的方法分析
2020/04/05 PHP
JavaScript实现多种排序算法
2016/02/24 Javascript
微信小程序 WXML、WXSS 和JS介绍及详解
2016/10/08 Javascript
Agularjs妙用双向数据绑定实现手风琴效果
2017/05/26 Javascript
AngularJS+Bootstrap3多级导航菜单的实现代码
2017/08/16 Javascript
详解React之key的使用和实践
2018/09/29 Javascript
Vue多环境代理配置方法思路详解
2019/06/21 Javascript
JS实现百度搜索框关键字推荐
2020/02/17 Javascript
js实现限定区域范围拖拉拽效果
2020/11/20 Javascript
[02:36]DOTA2亚洲邀请赛小组赛精彩集锦:EE凭借法力虚空拿下4杀
2017/03/30 DOTA
Python实现设置windows桌面壁纸代码分享
2015/03/28 Python
Python模块包中__init__.py文件功能分析
2016/06/14 Python
python的unittest测试类代码实例
2017/12/07 Python
python3 判断列表是一个空列表的方法
2018/05/04 Python
简单了解python shutil模块原理及使用方法
2020/04/28 Python
python连接mysql有哪些方法
2020/06/24 Python
Python extract及contains方法代码实例
2020/09/11 Python
canvas学习和滤镜实现代码
2018/08/22 HTML / CSS
日本最佳原创设计品牌:Felissimo(芬理希梦)
2019/03/19 全球购物
SCDKey德国:全球领先的数字游戏市场
2019/04/09 全球购物
爱尔兰电脑、家电和家具购物网站:Buy It Direct
2019/07/09 全球购物
Jones Bootmaker官网:优质靴子和鞋子在线
2020/11/30 全球购物
客房主管岗位职责
2013/12/09 职场文书
校园绿化美化方案
2014/06/08 职场文书
大学毕业晚会开场白
2015/05/29 职场文书
公司与个人合作协议书
2016/03/19 职场文书
2019年入党思想汇报
2019/03/25 职场文书
Golang bufio详细讲解
2022/04/21 Golang