Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
First solution in Clear category for Sort Except Zero by biorockstar
def except_zero(items: list) -> list:
nonzeroes = sorted([i for i in items if i != 0])
result = []
ref = iter(items)
while len(result) < len(items):
item = next(ref, False)
result += [0] if item == 0 else [nonzeroes.pop(0)]
return result
print("Example:")
print(list(except_zero([5, 3, 0, 0, 4, 1, 4, 0, 7])))
assert list(except_zero([5, 3, 0, 0, 4, 1, 4, 0, 7])) == [1, 3, 0, 0, 4, 4, 5, 0, 7]
assert list(except_zero([0, 2, 3, 1, 0, 4, 5])) == [0, 1, 2, 3, 0, 4, 5]
assert list(except_zero([0, 0, 0, 1, 0])) == [0, 0, 0, 1, 0]
assert list(except_zero([4, 5, 3, 1, 1])) == [1, 1, 3, 4, 5]
assert list(except_zero([0, 0])) == [0, 0]
print("The mission is done! Click 'Check Solution' to earn rewards!")
Dec. 28, 2022