Skip to content

Commit

Permalink
Update insertion_sort.py
Browse files Browse the repository at this point in the history
Cleaner solution: shorter, less variables, straightforward logic.
  • Loading branch information
yyeltsyn authored Sep 5, 2016
1 parent df271bf commit a681b24
Showing 1 changed file with 4 additions and 8 deletions.
12 changes: 4 additions & 8 deletions sorts/insertion_sort.py
Original file line number Diff line number Diff line change
Expand Up @@ -29,14 +29,10 @@ def insertion_sort(collection):
>>> insertion_sort([-2, -5, -45])
[-45, -5, -2]
"""
length = len(collection)
for i in range(length):
current_item = collection[i]
j = i - 1
while j >= 0 and current_item < collection[j]:
collection[j+1] = collection[j]
j -= 1
collection[j+1] = current_item
for index in range(1, len(collection)):
while 0 < index and collection[index] < collection[index-1]:
collection[index], collection[index-1] = collection[index-1], collection[index]
index -= 1

return collection

Expand Down

0 comments on commit a681b24

Please sign in to comment.