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

C++で頻度がn/2以上のソートされた配列内の要素を検索します。


サイズnの配列があると考えてください。この配列はソートされています。頻度がn/2以上の要素が1つあります。ここで、nは配列内の要素の数です。したがって、配列が[3、4、5、5、5]の場合、出力は5になります。

これらのタイプの配列を注意深く観察すると、頻度がn/2以上の数がインデックスn/2にも存在することが簡単にわかります。したがって、要素は位置n / 2

にあります。

Source Code:
#include<iostream>
using namespace std;
int higherFreq(int arr[], int n) {
   return arr[n / 2];
}
int main() {
   int arr[] = { 1, 2, 3, 4 , 4, 4, 4, 4, 4, 5};
   int n = sizeof(arr) / sizeof(arr[0]);
   cout << "The number " << higherFreq(arr, n) << " has occurred more than or equal to "<<n <<"/2 amount of times";
}

出力-

The number 4 has occurred more than or equal to 10/2 amount of times

  1. C ++では、すべての要素がk以上になるまで配列の要素を追加します。

    配列 −配列は、同じデータ型の要素のコンテナであり、その要素のインデックスは0です。 この問題では、整数の配列を使用します。そして、すべての要素が指定された数より大きいかどうかを確認します。ここでは、配列のすべての要素が指定された数k以上であるかどうかを確認します。そうでない場合は、配列の2つの最小要素を追加し、この合計を1つの要素として扱います。次に、新しいアレイの同じ条件を再度確認します。条件が真であることが判明した場合、合計が実行された回数が返されます。 Array = { 2, 6,3,12, 7} K = 5 Output : 1 説明 −最初に、すべての要素がkより大きいかどう

  2. 配列の最大要素を見つけるためのC++プログラム

    配列には複数の要素が含まれており、配列内の最大の要素は他の要素よりも大きい要素です。 たとえば。 5 1 7 2 4 上記の配列では、7が最大の要素であり、インデックス2にあります。 配列の最大の要素を見つけるプログラムは次のとおりです。 例 #include <iostream> using namespace std; int main() {    int a[] = {4, 9, 1, 3, 8};    int largest, i, pos;    largest = a[0