Skip to content

Instantly share code, notes, and snippets.

@jwenjian
Last active June 24, 2019 09:51
Show Gist options
  • Save jwenjian/1bf8bda519a0fb563f88c594679d7782 to your computer and use it in GitHub Desktop.
Save jwenjian/1bf8bda519a0fb563f88c594679d7782 to your computer and use it in GitHub Desktop.
Sort array using python
arr = [5, 2, 4, 6, 1, 3]
for i in range(1, len(arr) + 1):
for j in reversed(range(1, i)):
if arr[j - 1] > arr[j]:
print("before = ", arr)
arr[j - 1], arr[j] = arr[j], arr[j - 1]
print("after = ", arr)
print("\n")
print(arr)
"""
Command output :
before = [5, 2, 4, 6, 1, 3]
after = [2, 5, 4, 6, 1, 3]
before = [2, 5, 4, 6, 1, 3]
after = [2, 4, 5, 6, 1, 3]
before = [2, 4, 5, 6, 1, 3]
after = [2, 4, 5, 1, 6, 3]
before = [2, 4, 5, 1, 6, 3]
after = [2, 4, 1, 5, 6, 3]
before = [2, 4, 1, 5, 6, 3]
after = [2, 1, 4, 5, 6, 3]
before = [2, 1, 4, 5, 6, 3]
after = [1, 2, 4, 5, 6, 3]
before = [1, 2, 4, 5, 6, 3]
after = [1, 2, 4, 5, 3, 6]
before = [1, 2, 4, 5, 3, 6]
after = [1, 2, 4, 3, 5, 6]
before = [1, 2, 4, 3, 5, 6]
after = [1, 2, 3, 4, 5, 6]
[1, 2, 3, 4, 5, 6]
"""
arr = [5, 2, 4, 6, 1, 3]
for i in range(1, len(arr)):
for j in range(0, i):
if arr[j] > arr[i]:
arr[j], arr[i] = arr[i], arr[j]
print(arr) # [1, 2, 3, 4, 5, 6]
"""
Command output:
before = [5, 2, 4, 6, 1, 3]
after = [2, 5, 4, 6, 1, 3]
before = [2, 5, 4, 6, 1, 3]
after = [2, 4, 5, 6, 1, 3]
before = [2, 4, 5, 6, 1, 3]
after = [1, 4, 5, 6, 2, 3]
before = [1, 4, 5, 6, 2, 3]
after = [1, 2, 5, 6, 4, 3]
before = [1, 2, 5, 6, 4, 3]
after = [1, 2, 4, 6, 5, 3]
before = [1, 2, 4, 6, 5, 3]
after = [1, 2, 4, 5, 6, 3]
before = [1, 2, 4, 5, 6, 3]
after = [1, 2, 3, 5, 6, 4]
before = [1, 2, 3, 5, 6, 4]
after = [1, 2, 3, 4, 6, 5]
before = [1, 2, 3, 4, 6, 5]
after = [1, 2, 3, 4, 5, 6]
[1, 2, 3, 4, 5, 6]
"""
@jwenjian
Copy link
Author

arr-sort-2.py 是算法导论第二章第一个排序问题的解

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment