C ++で配列内の最初、2番目、3番目の最小要素を検索します
n個の要素の配列があるとします。配列内の1番目、2番目、3番目の最小要素を見つける必要があります。最初の最小値はアレイの最小値であり、2番目の最小値は最小ですが最初の最小値よりも大きく、同様に3番目の最小値は最小ですが2番目の最小値よりも大きくなります。
各要素をスキャンしてから要素を確認し、この問題を解決するために1番目、2番目、3番目の最小要素の条件を関連付けます。
例
#include<iostream>
using namespace std;
int getThreeMins(int arr[], int n) {
int first = INT_MAX, sec = INT_MAX, third = INT_MAX;
for (int i = 0; i < n; i++) {
if (arr[i] < first) {
third = sec;
sec = first;
first = arr[i];
} else if (arr[i] < sec) {
third = sec;
sec = arr[i];
} else if (arr[i] < third)
third = arr[i];
}
cout << "First min = " << first << endl;
cout << "Second min = " << sec << endl;
cout << "Third min = " << third << endl;
}
int main() {
int array[] = {4, 9, 18, 32, 12};
int n = sizeof(array) / sizeof(array[0]);
getThreeMins(array, n);
} 出力
First min = 4 Second min = 9 Third min = 12
-
C++で配列内の最小要素と2番目に小さい要素を検索します
n個の要素の配列があるとします。配列内で最初、2番目に小さい要素を見つける必要があります。最初の最小値は配列の最小値であり、2番目に小さい値は最小値ですが、最初の最小値よりも大きくなります。 各要素をスキャンしてから要素を確認し、この問題を解決するために1番目と2番目に小さい要素の条件を関連付けます。 例 #include<iostream> using namespace std; int getTwoSmallest(int arr[], int n) { int first = INT_MAX, sec = INT_MAX; &nb
-
C ++では最初の配列に存在し、2番目には存在しない要素を検索します
2つの配列AとBがあるとします。要素はほとんどありません。セットAには存在するが、セットBには存在しない要素を見つける必要があります。そのような状況を考え、AとBをセットと見なすと、これは基本的にセット分割操作です。 AとBのセットの差により、これらの要素が返されます。 例 #include<iostream> #include<set> #include<algorithm> #include<vector> using namespace std; void setDiffResults(int A[], int B[], int An, i