code: def quick_sort(arr, simulation=False):
      
      
      iteration = 0
      if simulation:
          print("iteration",iteration,":",*arr)
      arr, _ = quick_sort_recur(arr, 0, len(arr) - 1, iteration, simulation)
      return arr
docs: Quick sort
          Complexity: best O(n log(n)) avg O(n log(n)), worst O(N^2)