Input- int arr[] = {3, 4, 1, 2, 0}
出力- ソート前の配列: 3 4 1 2 0 arr[j] が i になるように配列を並べ替えます。arr[i] が j の場合、次のようになります: 4 2 3 0 1
説明- サイズ配列 6 の整数を取得します。および 6 未満の値を持つ配列内のすべての要素。ここで、配列を再配置します。つまり、arr[1] は 4、arr[4] = 1、arr[2] は 1、arr[1] = 2、arr[3] は 2. arr[2] = 3; arr[4] は 0、arr[0]=4。したがって、最終的な配列は 4 2 3 0 1 になります。
入力 t- int arr[] = {2, 0, 1, 3}
出力- 配置前の配列: 2 0 1 3 arr[i] が j の場合、arr[j] が i になるように配列を並べ替えます。 1 2 0 3
説明- サイズ 6 の整数の配列を取得し、配列内のすべての要素の値が 6 未満です。ここで、配列を再配置します。つまり、arr[0] は 2、arr[2] = 0、arr[1] は 0、arr[0] = 1、arr[2] は 1、arr[1] = 2; arr[3] は 3、arr[3] = 3。したがって、最終的な配列は 1 2 0 3 になります。
整数型要素の配列を入力し、配列のサイズを計算します。
配列を配置する前に配列を出力し、Rearrangement(arr, size)関数を呼び出します。
関数Rearrangement(arr, size)
#include <bits/stdc++.h> using namespace std; void Rearrangement(int arr[], int size){ int ptr[size]; for(int i = 0; i < size; i++){ ptr[arr[i]] = i; } for(int i = 0; i < size; i++){ arr[i] = ptr[i]; } } int main(){ //input an array int arr[] = {3, 4, 1, 2, 0}; int size = sizeof(arr) / sizeof(arr[0]); //print the original Array cout<<"Array before Arrangement: "; for (int i = 0; i < size; i++){ cout << arr[i] << " "; } //calling the function to rearrange the array Rearrangement(arr, size); //print the array after rearranging the values cout<<"\nRearrangement of an array such that ‘arr[j]’ becomes ‘i’ if ‘arr[i]’ is ‘j’ is: "; for(int i = 0; i < size; i++){ cout<< arr[i] << " "; } return 0; }
Array before Arrangement: 3 4 1 2 0 Rearrangement of an array such that ‘arr[j]’ becomes ‘i’ if ‘arr[i]’ is ‘j’ is: 4 2 3 0 1
以上がC++ で 'arr' が 'j' の場合、'arr' が 'i' になるように配列を再配置します。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。