C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

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

  1. 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

  2. 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