分享一道算法题的PHP趣味解法
时间:2023-04-10 17:56
本篇文章给大家带来了关于php的相关知识,其中主要跟大家分享一道算法题的趣味解法,有代码示例,感兴趣的朋友下面一起来看一下吧,希望对大家有帮助。 最近在 Leetcode 上看到的,给人眼前一亮的感觉。 原文链接:https://leetcode.cn/problems/contains-duplicate/ 题目 给你一个整数数组 nums 。如果任一值在数组中出现 至少两次 ,返回 true ;如果数组中每个元素互不相同,返回 false 。 标准解法 趣味解法 原理:掷两个骰子,次数足够多,有相同的话,说明是有重复的。 推荐学习:《PHP视频教程》 以上就是分享一道算法题的PHP趣味解法的详细内容,更多请关注Gxl网其它相关文章!示例 1:输入:nums = [1,2,3,1]输出:true示例 2:输入:nums = [1,2,3,4]输出:false示例 3:输入:nums = [1,1,1,3,3,4,3,2,4,2]输出:true
function containsDuplicate($nums) { foreach($nums as $val){ if($repeat[$val] != ''){ return true; }else{ $repeat[$val] = $val; } } return false; }
function containsDuplicate($nums) { $total = count($nums); for ($i=0; $i < 100000; $i++) { $a = mt_rand() % $total; $b = mt_rand() % $total; if($a != $b && ($nums[$a] == $nums[$b])){ return true; } } return false; }