Guest User

Untitled

a guest
Jan 17th, 2019
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.45 KB | None | 0 0
  1. #Insertion Sort
  2. import numpy as np
  3. import time
  4.  
  5. A = np.array([0,1,2,3,4]) #sorted
  6. B = np.array([4,3,2,1,0]) #reverse
  7. C = np.random.randint(20,size=5) #random size 5
  8. D = np.random.randint(20,size=10) #random size 10
  9. E = np.random.randint(20,size=15) #random size 15
  10.  
  11. def insertionSort(array):
  12. print("Original Array =", array)
  13. counter = 0
  14. start = time.time()
  15.  
  16. #actual sorting
  17. for j in range(1, len(array)):
  18. key = array[j]
  19. i = j-1
  20. counter += 2
  21. while (i>=0 and array[i]>key):
  22. array[i+1] = array[i]
  23. i = i-1
  24. counter +=2
  25. array[i+1] = key
  26. counter+=1
  27.  
  28. end = time.time()
  29. runTime = end-start
  30. print("Sorted Array =", array)
  31. print("Run time =", runTime)
  32. print("Number of Steps =", counter)
  33.  
  34. insertionSort(A)
  35. insertionSort(B)
  36. insertionSort(C)
  37. insertionSort(D)
  38. insertionSort(E)
  39.  
  40.  
  41. #Selection Sort
  42. import numpy as np
  43. import time
  44.  
  45. A = np.array([0,1,2,3,4]) #sorted
  46. B = np.array([4,3,2,1,0]) #reverse
  47. C = np.random.randint(20,size=5) #random size 5
  48. D = np.random.randint(20,size=10) #random size 10
  49. E = np.random.randint(20,size=15) #random size 15
  50.  
  51. def selectionSort(array):
  52. print("Original Array =", array)
  53. counter = 0
  54. start = time.time()
  55.  
  56. #actual sorting
  57. for i in range(len(array)):
  58. min = i
  59. counter += 1
  60. for j in range(i+1,len(array)):
  61. if array[min] > array[j]:
  62. min = j
  63. counter += 1
  64. array[i],array[min] = array[min],array[i]
  65. counter += 2
  66.  
  67. end = time.time()
  68. runTime = end-start
  69. print("Sorted Array =", array)
  70. print("Run time =", runTime)
  71. print("Number of Steps =", counter)
  72.  
  73. selectionSort(B)
  74.  
  75. #Bubble Sort
  76. import numpy as np
  77. import time
  78.  
  79. A = np.array([0,1,2,3,4]) #sorted
  80. B = np.array([4,3,2,1,0]) #reverse
  81. C = np.random.randint(20,size=5) #random size 5
  82. D = np.random.randint(20,size=10) #random size 10
  83. E = np.random.randint(20,size=15) #random size 15
  84.  
  85. def bubbleSort(array):
  86. print("Original Array =", array)
  87. counter = 0
  88. start = time.time()
  89.  
  90. #actual sorting
  91. for i in range(len(array)):
  92. for j in range(i+1,len(array)):
  93. if array[i] > array[j]:
  94. array[i],array[j] = array[j],array[i]
  95. counter += 2
  96.  
  97. end = time.time()
  98. runTime = end-start
  99. print("Sorted Array =", array)
  100. print("Run time =", runTime)
  101. print("Number of Steps =", counter)
  102.  
  103.  
  104. bubbleSort(D)
Add Comment
Please, Sign In to add comment