C++ で 'arr' が 'j' の場合、'arr' が 'i' になるように配列を再配置します。
Sep 18, 2023 am 10:29 AMこの状況におけるさまざまな入出力シナリオを見てみましょう - h2>
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)
- #配列 arr[] と同じサイズの整数型の値の配列 ptr[] を作成します。
- i が size 未満になるまで、i から 0 まで FOR のループを開始します。ループ内で、ptr[arr[i]] を i に設定します。
- i が size 未満になるまで、i から 0 まで FOR のループを開始します。ループ内で、arr[i] を ptr[i] に設定します。
- #再配置された配列を出力します。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#
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;
}
ログイン後にコピー
出力上記のコードを実行すると、次の出力が生成されます1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
|
1 2 |
|
以上がC++ で 'arr' が 'j' の場合、'arr' が 'i' になるように配列を再配置します。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

人気の記事

人気の記事

ホットな記事タグ

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











foreach ループを使用して PHP 配列から重複要素を削除するにはどうすればよいですか?

PHP 配列ディープ コピーの技術: さまざまな方法を使用して完璧なコピーを実現する

PHP 配列のディープ コピーのベスト プラクティス: 効率的な方法を発見する
