Posted by & filed under 每日一题.

【四脚猫】每日一题(12月02日):在一堆数字中找出和其他数字不同的数字,如123,123,14,123,123,123这堆数字中找出14来,写下算法思路和时间复杂度。

参考答案:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
/*
读取前3个数字:
1. 如果3个数字不都一样,给出不一样的那个,结束。
2. 如果都一样=X,整个数组扫过去,找到一个不等于X的数字,结束。
*/


function  uniqNum($nums){
    $n=count($nums);
    $a = $nums[0]; $b = $nums[1];$c = $nums[2];
    if ($a == $b && $b == $c)
        for ($i = 3; $i < $n; $i++)
            if ($x[$i] != $a){
            return $x[$i];
            }
    if ($a == $b) return $c;
    if ($a == $c) return $b;
    return $a;
}

echo uniqNum( [ 123,123,14,123,123,123 ] );

欢迎各位攻城狮,各位大牛给每日一题投稿,大家可以把自己碰到的有趣问题,工作中碰到的难题等…发送到 稿件邮箱:2313427189@qq.com