Поиск выбывших/отсутcтвующих в массиве элементов - Разбор алгоритмической задачи с собеседований
Primary tabs
Forums:
Условие:
У нас есть массив целых чисел:
[123, 45, 5638, 49, -78, 22, 5, 345, 68, 7]
из него удалили некоторые элементы, так что он получил вид:
[123, 5638, 22, 5, 68, 7, 0, 0, 0, 0]
-- выведите на экран числа, которые были удалены.
Например, в данном случае ожидается вывод:
[45, 49, -78, 345]
Возможное решение
Например, так:
<?php
$arr = [123, 45, 5638, 49, -78, 22, 5, 345, 68, 7];
$arr_result = [123, 5638, 22, 5, 68, 7, 0, 0, 0, 0];
$index = [];
foreach ($arr as $val) {
$index[$val] = 1;
}
foreach ($arr_result as $key => $val) {
if ($val) {
unset($index[$val]);
}
}
// ответ
$arr = array_keys($index);
foreach ($arr as $key => $val) {
echo $val . ' ';
}
- Log in to post comments
- 377 reads