Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def insert(seq, val):
- seq = iter(seq)
- try:
- next_val = next(seq)
- except StopIteration:
- next_val = None
- # print(next_val, val)
- if next_val:
- if next_val > val:
- yield val
- yield next_val
- yield from seq
- else:
- yield next_val
- yield from insert(seq, val)
- else:
- yield val
- def sort(seq, result=iter([])):
- seq = iter(seq)
- try:
- next_val = next(seq)
- except StopIteration:
- next_val = None
- yield from result
- result = insert(result, next_val)
- yield from sort(seq, result)
- a = [1, 2, 3, 5, 6]
- val = 4
- t = insert(a, val)
- test = [1, 5, 3, 4, 2, 6, 9, 8, 7]
- res = sort(test)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement