: Playground-noun:a place where people can playimport uikitvar str = "Hello, Playground"///Sumfunc sum (array:array& lt;int>), Int {if Array.count = = 0 {return 0; } var Arraym = array Let first = Arraym.removefirst () return first + sum (array:arraym)}let total = SUM (array : [2, 4, 6, 8])///Countfunc Findtotalcount (array:array<int>), Int {if Array.count = = 1 {return 1; } var count:int = 0 var arraym = array Arraym.removefirst () Count + = 1 return count + find TotalCount (array:arraym)}let totalcount = findtotalcount (array: [2, 4, 6, 8])///Maximumfunc Findmaximum (array:array< ; int>, Max:int), Int {if Array.count = = 0 {return max; } var Arraym = array var m = max Let first = Arraym.removefirst () m = first > Max? First:max return Findmaximum (Array:arraym, max:m)}let max = findmaximum (array: [2, 4, 6, 8, 3], max:0)///Quick So Rtfunc QuicksoRT (array:array<int>), array<int> {if Array.count < 2 {return array} let pivot = Array[0] var Leftarray = array<int> () var rightarray = array<int> () for I in 1...array.coun t-1 {Let item = Array[i] If Item <= pivot {leftarray.append (item)} else { Rightarray.append (item)}} var result = Array<int> () result.append (Contentsof:quicksort (arr Ay:leftarray)) Result.append (pivot) result.append (Contentsof:quicksort (Array:rightarray)) return Result}let QS = QuickSort (array: [5, 2, 7, ten, +, 156])///Quick Sort in Best-casefunc quicksortinbestcase (array:array<int> ;), array<int> {if Array.count < 2 {return Array} let Middleindex = Array.count/2 let pivot = Array[middleindex] var Leftarray = array<int> () var rightarray = array<int> () f Or I in 0...array.count-1 {Let item = Array[i] If Item < pivot {Leftarray.append (item)} else if item > Pivot {rightarray.append (item)}} var result = Array<int> () result.append (Contentso F:quicksort (Array:leftarray)) result.append (pivot) result.append (Contentsof:quicksort (array:rightarray)) Retu RN Result}let qsinbestcase = quicksortinbestcase (array: [5, 2, 7, 10, 30, 200, 156])
Recursive demo program (SWIFT)