| Conditions | 8 |
| Paths | 12 |
| Total Lines | 33 |
| Code Lines | 24 |
| Lines | 0 |
| Ratio | 0 % |
| Changes | 2 | ||
| Bugs | 0 | Features | 0 |
| 1 | <?php |
||
| 42 | public static function findMedianSortedArrays2(array $num1, array $num2): float |
||
| 43 | { |
||
| 44 | $i = $j = $k = 0; |
||
| 45 | $v1 = $v2 = -1; |
||
| 46 | [$m, $n] = [count($num1), count($num2)]; |
||
| 47 | |||
| 48 | for (; $k <= ($m + $n) / 2; $k++) { |
||
| 49 | if ($i < $m && $j < $n) { |
||
| 50 | if ($num1[$i] < $num2[$j]) { |
||
| 51 | $v2 = $v1; |
||
| 52 | $v1 = $num1[$i]; |
||
| 53 | $i++; |
||
| 54 | } else { |
||
| 55 | $v2 = $v1; |
||
| 56 | $v1 = $num2[$j]; |
||
| 57 | $j++; |
||
| 58 | } |
||
| 59 | } elseif ($i === $m) { |
||
| 60 | $v2 = $v1; |
||
| 61 | $v1 = $num2[$j]; |
||
| 62 | $j++; |
||
| 63 | } elseif ($j === $n) { |
||
| 64 | $v2 = $v1; |
||
| 65 | $v1 = $num1[$i]; |
||
| 66 | $i++; |
||
| 67 | } |
||
| 68 | } |
||
| 69 | |||
| 70 | if (($m + $n) % 2 === 0) { |
||
| 71 | return ($v1 + $v2) * 1.0 / 2; |
||
| 72 | } |
||
| 73 | |||
| 74 | return $v1; |
||
| 75 | } |
||
| 77 |