Advertisement
IT45200

List order Algo

Mar 12th, 2019
126
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.69 KB | None | 0 0
  1. move = 0
  2. def start(lst):
  3.     global move
  4.     for j in range (0,len(lst)-1):
  5.         if int(lst[j]) > int(lst[j+1]):
  6.             print('\t- Checking ' + str(lst[j]) +  ' / ' + str(lst[j+1]))
  7.             print('\t=> Moving ' + str(lst[j]) + ' to the end')
  8.             lst.insert(len(lst)-1,lst.pop(j))
  9.             move += 1
  10.             print('++ Intermediate my_list = ' + str(lst))
  11.             start(lst)
  12.     return move
  13.                
  14. def min_moves(my_list):
  15.     print('+ Original my_list = ' + str(my_list) + '\n')
  16.     x = start(my_list)
  17.     print('\n\t=> Number of moves = ' + str(x) + '\n')
  18.     print('\n+ Final my_list = ' + str(my_list) + '\n')
  19.        
  20. min_moves([1, 3, 2, 4, 5])
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement