<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                # 數組旋轉程序 > 原文: [https://www.geeksforgeeks.org/array-rotation/](https://www.geeksforgeeks.org/array-rotation/) 編寫一個函數`turn(ar[], d, n)`,該函數將大小為`n`的`arr[]`旋轉`d`個元素。 ![Array](https://img.kancloud.cn/ad/82/ad82048d4bf6f0a8c770bcfbad1f7d5d_369x102.png "Array") 將上面的數組旋轉 2 將使數組 ![ArrayRotation1](https://img.kancloud.cn/89/48/8948b7758e3a9610abc2ae2b8893978a_349x90.png "ArrayRotation1") **方法 1(使用臨時數組)** ``` Input arr[] = [1, 2, 3, 4, 5, 6, 7], d = 2, n =7 1) Store the first d elements in a temp array temp[] = [1, 2] 2) Shift rest of the arr[] arr[] = [3, 4, 5, 6, 7, 6, 7] 3) Store back the d elements arr[] = [3, 4, 5, 6, 7, 1, 2] ``` **時間復雜度**: `O(n)` **輔助空間**: `O(d)` **方法 2(一輪旋轉)** ``` leftRotate(arr[], d, n) start For i = 0 to i < d Left rotate all elements of arr[] by one end ``` 要旋轉一個,將`arr[0]`存儲在臨時變量`temp`中,將`arr[1]`移至`arr[0]`,將`arr[2]`移至`arr[1]`…最后將`temp`移至`arr[n-1]` 讓我們以相同的示例`arr[] = [1,2,3,4,5,6,7]`,`d = 2`。將`arr []`旋轉 2 次,我們得到`[2, 3]`,第一次旋轉后為`[4, 5, 6, 7, 1]`,第二次旋轉后為`[3, 4, 5, 6, 7, 1, 2]`。 下面是上述方法的實現: ## C++ ```cpp // C++ program to rotate an array by // d elements #include <bits/stdc++.h> using namespace std; /*Function to left Rotate arr[] of? ??size n by 1*/ void leftRotatebyOne(int arr[], int n) { ????int temp = arr[0], i; ????for (i = 0; i < n - 1; i++) ????????arr[i] = arr[i + 1]; ????arr[i] = temp; } /*Function to left rotate arr[] of size n by d*/ void leftRotate(int arr[], int d, int n) { ????for (int i = 0; i < d; i++) ????????leftRotatebyOne(arr, n); } /* utility function to print an array */ void printArray(int arr[], int n) { ????for (int i = 0; i < n; i++) ????????cout << arr[i] << " "; } /* Driver program to test above functions */ int main() { ????int arr[] = { 1, 2, 3, 4, 5, 6, 7 }; ????int n = sizeof(arr) / sizeof(arr[0]); ????// Function calling ????leftRotate(arr, 2, n); ????printArray(arr, n); ????return 0; } ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看