当前位置: 首页 > 编程笔记 >

在C ++中,在频率大于或等于n / 2的排序数组中查找元素。

郎魁
2023-03-14
本文向大家介绍在C ++中,在频率大于或等于n / 2的排序数组中查找元素。,包括了在C ++中,在频率大于或等于n / 2的排序数组中查找元素。的使用技巧和注意事项,需要的朋友参考一下

考虑我们有一个大小为n的数组。该数组已排序。有一个元素的频率大于或等于n / 2,其中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
 类似资料:
  • 问题内容: 如果我有一个PHP数组: 带有值: 我有一个变量: 如何返回值?: 因为那是数组中最接近38(递增)的值? 问候, 泰勒 问题答案:

  • 本文向大家介绍在C ++中以小于O(n)的时间在有限范围的数组中查找每个元素的频率,包括了在C ++中以小于O(n)的时间在有限范围的数组中查找每个元素的频率的使用技巧和注意事项,需要的朋友参考一下 假设我们有一个整数数组。数组为A,大小为n。我们的任务是找到阵列中所有元素的频率小于O(n)时间。元素的大小必须小于一个等于M的值。在这里,我们将使用二进制搜索方法。在这里,如果末端元素不同,则将数组

  • 本文向大家介绍计算C ++中排序后的旋转数组中小于或等于给定值的元素,包括了计算C ++中排序后的旋转数组中小于或等于给定值的元素的使用技巧和注意事项,需要的朋友参考一下 给我们一个整数数组。该数组是已排序的旋转数组。目的是找到等于或小于给定数K的数组中的元素数。 方法是遍历整个数组并计算小于或等于K的元素。 输入值 输出结果 说明-元素<= 4是1,2,3,4 Count = 4 输入值 输出结

  • 问题内容: NumPy具有有效的功能/方法来标识对象中非零元素的索引。什么是最有效的方式来获得该元素的索引 做 具有零值? 问题答案: numpy.where()是我的最爱。

  • 问题内容: 我接受了采访,并且有以下问题: 在不到O(n)的时间内从排序数组中查找唯一数字。 我给出了解决方案,但这是O(n)的。 编辑: 排序后的数组大小约为200亿,唯一数约为1000。 问题答案: 分而治之 : 查看排序序列的第一个和最后一个元素(初始序列为)。 如果两者相等,则序列中的唯一元素是第一个(无论序列有多长)。 如果不同,则划分序列并为每个子序列重复。 一般情况下解决 O(log

  • 本文向大家介绍查找三个小于或等于N的整数,以使它们的LCM最大-C ++,包括了查找三个小于或等于N的整数,以使它们的LCM最大-C ++的使用技巧和注意事项,需要的朋友参考一下 在本教程中,我们将编写一个基于LCM概念的程序。如标题所示,我们必须找到三个小于或等于LCM最大的给定数字的数字。 让我们来看一个例子。 在深入探讨问题之前,让我们看看什么是LCM并为其编写程序。 LCM是数字的最小公倍