Swift 陣列元素旋轉程式


在 Swift 中,我們建立一個使用者自定義函式來旋轉陣列的元素。在這個函式中,我們首先找到總旋轉次數,然後根據指定的旋轉次數旋轉陣列。

例如:

Array = [3, 5, 2, 1, 7, 9]
Rotation = 2
Resultant Array = [2, 1, 7, 9, 3, 5]

演算法

  • 步驟 1 - 建立一個函式,按指定的旋轉次數旋轉陣列的元素。

  • 步驟 2 - 在函式內部,我們首先找到所需的旋轉次數。

  • 步驟 3 - 然後使用陣列切片語法根據給定的旋轉次數旋轉陣列。

  • 步驟 4 - 在函式外部建立一個數組。

  • 步驟 5 - 現在呼叫上面建立的函式,並傳遞陣列和元素移動到的位置數。

  • 步驟 6 - 列印輸出。

示例

在下面的 Swift 示例中,我們首先建立一個名為 rotateMyArray() 的函式,它接受兩個引數:陣列和陣列元素需要移動的總位置數。現在,在函式內部,我們首先找到所需的旋轉次數,然後使用陣列切片旋轉陣列的元素。現在我們建立一個數組 [3, 7, 1, 9, 3, 8, 4] 並使用 rotateMyArray() 函式將其旋轉 3 個位置。因此,結果陣列為 [9, 3, 8, 4, 3, 7, 1]。

import Foundation
import Glibc
 
// Function to rotate the elements of the given array 
func rotateMyArray(array: inout [Int], rotate: Int) {

   // Calculate the required number of rotations 
   let mRotate = rotate % array.count
    
   // Rotating the array by the specified number of rotations
   array = Array(array[mRotate..<array.count] + array[0..<mRotate])
}

var myArray = [3, 7, 1, 9, 3, 8, 4]
print("Original Array:", myArray)

rotateMyArray(array: &myArray, rotate: 3)
print("Modified Array:", myArray)

輸出

Original Array: [3, 7, 1, 9, 3, 8, 4]
Modified Array: [9, 3, 8, 4, 3, 7, 1]

結論

這就是我們如何旋轉陣列元素的方法。這裡我們在函式中使用 inout 引數。inout 關鍵字用於將引數作為引用傳遞給函式,這意味著如果引數發生任何更改,都會反映在原始引數中。

更新於:2023年4月24日

640 次瀏覽

開啟您的職業生涯

完成課程獲得認證

開始學習
廣告