3 ms·
Non recursive algo with python: def flatten(array): queue = [array] result = [] while len(queue) > 0: item = queue.pop(0)
by alain_gilbert 10y ago
Non recursive algo with python:
def flatten(array):
queue = [array]
result = []
while len(queue) > 0:
item = queue.pop(0)
if isinstance(item, list):
for sub_item in item:
queue.append(sub_item)
else:
result.append(item)
return result
a = [1,[2,3], [4, [5,6]]]
print 'input:', a, '\noutput:', flatten(a)