Guest User

Untitled

a guest
Dec 11th, 2018
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.22 KB | None | 0 0
  1. import UIKit
  2.  
  3. func merge(leftPile: [Int], rightPile: [Int]) -> [Int]{
  4. print(leftPile,"...\(rightPile)")
  5.  
  6. var leftIndex = 0, rightIndex = 0
  7. var mergedPile = [Int]()
  8.  
  9. while leftIndex < leftPile.count && rightIndex < rightPile.count {
  10. if leftPile[leftIndex] < rightPile[rightIndex] {
  11. mergedPile.append(leftPile[leftIndex])
  12. leftIndex += 1
  13. } else if leftPile[leftIndex] > rightPile[rightIndex] {
  14. mergedPile.append(rightPile[rightIndex])
  15. rightIndex += 1
  16. } else {
  17. mergedPile.append(leftPile[leftIndex])
  18. leftIndex += 1
  19. mergedPile.append(rightPile[rightIndex])
  20. rightIndex += 1
  21. }
  22. }
  23.  
  24. while leftIndex < leftPile.count {
  25. mergedPile.append(leftPile[leftIndex])
  26. leftIndex += 1
  27. }
  28.  
  29. while rightIndex < rightPile.count {
  30. mergedPile.append(rightPile[rightIndex])
  31. rightIndex += 1
  32. }
  33. print(mergedPile)
  34. return mergedPile
  35. }
  36.  
  37. /*
  38. let numbers = [2, 1, 5, 9, 4]
  39. let arr = mergeSort(array: numbers)
  40.  
  41. [2, 1, 5, 9, 4]
  42. [2, 1]
  43. [2]
  44. [1]
  45. [2]...[1]
  46. [1, 2]
  47. [5, 9, 4]
  48. [5]
  49. [9, 4]
  50. [9]
  51. [4]
  52. [9]...[4]
  53. [4, 9]
  54. [5]...[4, 9]
  55. [4, 5, 9]
  56. [1, 2]...[4, 5, 9]
  57. */
Add Comment
Please, Sign In to add comment