How to cyclically rotate the elements of an int array right by one in Scala

1 Answer

0 votes
def cyclicallyRotateArrayRightByOne(arr: Array[Int]): Array[Int] = {
  if (arr.isEmpty) return arr

  val lastElement = arr.last
  
  for (i <- arr.length - 1 until 0 by -1) {
    arr(i) = arr(i - 1)
  }
  arr(0) = lastElement
  
  arr
}


val arr = Array(8, 9, 0, 3, 6, 1)

val rotatedArr = cyclicallyRotateArrayRightByOne(arr)

println(rotatedArr.mkString(", "))  



/*
run:

1, 8, 9, 0, 3, 6

*/

 



answered Oct 7, 2024 by avibootz
...