new_contents: from random import randint
  from tempfile import TemporaryFile
  import numpy as np
  import math
  
  
  
  def _inPlaceQuickSort(A,start,end):  
      count = 0
      if start<end:
          pivot=randint(start,end)
          temp=A[end]
          A[end]=A[pivot]
          A[pivot]=temp
          
          p,count= _inPlacePartition(A,start,end)
          count += _inPlaceQuickSort(A,start,p-1)
          count += _inPlaceQuickSort(A,p+1,end)
      return count
  
  def _inPlacePartition(A,start,end):
      
      count = 0
      pivot= randint(start,end)
      temp=A[end]
      A[end]=A[pivot]
      A[pivot]=temp
      newPivotIndex=start-1
      for index in range(start,end):
                 
          count += 1
          if A[index]<A[end]:#check if current val is less than pivot value
              newPivotIndex=newPivotIndex+1
              temp=A[newPivotIndex]
              A[newPivotIndex]=A[index]
              A[index]=temp
      
      temp=A[newPivotIndex+1]
      A[newPivotIndex+1]=A[end]
      A[end]=temp
      return newPivotIndex+1,count
      
  outfile = TemporaryFile()    
  p = 100 # 1000 elements are to be sorted
  
  
  
  
  mu, sigma = 0, 1 # mean and standard deviation
  X = np.random.normal(mu, sigma, p)
  np.save(outfile, X)
  print('The array is')
  print(X)
  
    
      
  
  
  
  outfile.seek(0)  # using the same array
  M = np.load(outfile)
  r = (len(M)-1)
  z = _inPlaceQuickSort(M,0,r) 
  
  print("No of Comparisons for 100 elements selected from a standard normal distribution is :")
  print(z)
  
subject: Create randomquicksort.py