(left, right)
| 29 | |
| 30 | |
| 31 | def merge(left, right): |
| 32 | if not left: |
| 33 | return right |
| 34 | |
| 35 | if not right: |
| 36 | return left |
| 37 | |
| 38 | if left[0] < right[0]: |
| 39 | return [left[0]] + merge(left[1:], right) |
| 40 | |
| 41 | return [right[0]] + merge(left, right[1:]) |
| 42 | |
| 43 | |
| 44 | def timsort(lst): |