Сохранен 16
https://2ch.hk/b/res/194822164.html
24 декабря 2023 г. Архивач восстановлен после серьёзной аварии. К сожалению, значительная часть сохранённых изображений и видео была потеряна. Подробности случившегося. Мы призываем всех неравнодушных помочь нам с восстановлением утраченного контента!

Анон, помоги с алгоритмом У меня есть массив

 Аноним 16/04/19 Втр 19:13:12 #1 №194822164 
275px-Canislupus265b[2].jpg
Анон, помоги с алгоритмом

У меня есть массив вида

[10, [26, [32, [49]]]]

Т.е. тут набор вложенных массивов из двух элементов, где первый элемент - число, второй - следующий массив

Нужно из него получить массив типа

[10, 26, 32, 49]

Заранее спасибо
Аноним 16/04/19 Втр 19:16:19 #2 №194822319 
Бамп
Аноним 16/04/19 Втр 19:19:52 #3 №194822503 
знач смари долбоеб тебе нужно из каждого массива вытащить число, про индексы слышал в своей жизни? Ну вот дальше сам попробуй подумать, чепуха бля
Аноним OP 16/04/19 Втр 19:23:56 #4 №194822688 
>>194822503
Ну и че дальше? Чувствую что нужно рекурсию использовать, но как именно?
Аноним 16/04/19 Втр 19:25:48 #5 №194822777 
>>194822688
Что что, бери и пиши блять, руками по кнопкам тук тук тук
пробуй, пытайся, чувствуй боль.
Аноним 16/04/19 Втр 19:26:05 #6 №194822791 
>>194822688
Рекурсивное решение - говно, жрущее память. Делай итеративно
Аноним 16/04/19 Втр 19:29:48 #7 №194822961 
<?php

$array = [10, [26, [32, [49]]]];

$newArray = [];

function convert($array, $newArray) {
foreach ($array as $value) {
if (is_numeric($value)) {
$newArray[] = $value;
} else {
$newArray = convert($value, $newArray);
}
}

return $newArray;
}

$newArray = convert($array, $newArray);

print_r($newArray);
Аноним 16/04/19 Втр 19:29:48 #8 №194822962 
old_list = [10, [26, [32, [49]]]]
new_list = []
new_list.append(item)

def check(element):
for item in element:
if type(item) == list:
print("item = list", item)
check(item)
else:
print(item)
new_list.append(item)

check(old_list)

print("new_list =", new_list)

вот
Аноним 16/04/19 Втр 19:30:12 #9 №194822983 
>>194822777
Уже чувствую
>>194822791
Хуй знает как тут сделать итеративно, мы же не знаем изначально какая там вложенность
Аноним 16/04/19 Втр 19:30:12 #10 №194822984 
>>194822962
Это на питоне если что
Аноним 16/04/19 Втр 19:31:45 #11 №194823050 
>>194822164 (OP)
Деф мердж(а):
Иф лен(а) == 1: ретерн а
Елз: Ретерн [а[0] ] + мердж(а[1])
Аноним 16/04/19 Втр 19:32:01 #12 №194823064 
>>194822961
>>194822962
Спасибо
Аноним 16/04/19 Втр 19:32:07 #13 №194823069 
Screenshot 2019-04-16 at 19.31.39.png
>>194822962
Только сейчас заметил ошибки. Исправленная версия
Аноним 16/04/19 Втр 19:32:34 #14 №194823081 
>>194823064
>>194823069
вот
Аноним 16/04/19 Втр 19:35:05 #15 №194823189 
Эх ребята, вы не должны были делать за него, вы только помогаете ему стать овощем. А еще двачеры, тьхуу
Аноним 16/04/19 Втр 19:41:09 #16 №194823523 
Создавать тред по вопросу который гуглится в 5 секунд? Ты издеваешься?

https://www.google.com/search?ei=ZgW2XNH1GISWjgbkl424Aw&q=flatten+multidimensional+array&oq=flatten+multidimensional+array&gs_l=psy-ab.3..35i39i19j0i19l6j0i30i19l2j0i5i30i19.764.764..1071...0.0..0.78.78.1......0....1..gws-wiz.......0i71.OKVNpLoqxLs
comments powered by Disqus

Отзывы и предложения