PHP算法题实例代码分析

后端开发   发布日期:2025年01月01日   浏览次数:175

本篇内容主要讲解“PHP算法题实例代码分析”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“PHP算法题实例代码分析”吧!

题目

给你一个整数数组 nums 。如果任一值在数组中出现 至少两次 ,返回 true ;如果数组中每个元素互不相同,返回 false 。

  1. 示例 1
  2. 输入:nums = [1,2,3,1]
  3. 输出:true
  4. 示例 2
  5. 输入:nums = [1,2,3,4]
  6. 输出:false
  7. 示例 3
  8. 输入:nums = [1,1,1,3,3,4,3,2,4,2]
  9. 输出:true

标准解法

  1. function containsDuplicate($nums) {
  2. foreach($nums as $val){
  3. if($repeat[$val] != ''){
  4. return true;
  5. }else{
  6. $repeat[$val] = $val;
  7. }
  8. }
  9. return false;
  10. }

趣味解法

原理:掷两个骰子,次数足够多,有相同的话,说明是有重复的。

  1. function containsDuplicate($nums) {
  2. $total = count($nums);
  3. for ($i=0; $i < 100000; $i++) {
  4. $a = mt_rand() % $total;
  5. $b = mt_rand() % $total;
  6. if($a != $b && ($nums[$a] == $nums[$b])){
  7. return true;
  8. }
  9. }
  10. return false;
  11. }

以上就是PHP算法题实例代码分析的详细内容,更多关于PHP算法题实例代码分析的资料请关注九品源码其它相关文章!