def reverseArr2[T](n:Int, arr:Array[T])={ def inverseVector[S](start:Int, end: Int,arr:Array[S])={ val pair = (end - start)/2 val sum = start + end - 1 var j = start for (i <- 1 to pair){ val t = arr(j) arr(j) = arr(sum - j) arr(sum - j) = t j += 1 } arr } inverseVector(0,n,arr) inverseVector(n,arr.size,arr) inverseVector(0,arr.size,arr) }