std :: count()函数以及C ++ STL中的示例

C ++ STL std:count()函数

C ++ STL包含函数std :: count(),该函数用于查找给定范围内特定元素的出现。您可以将此函数与数组,字符串,向量等一起使用。

要使用此功能,我们必须使用<bits / stdc ++>标头或<algorithm>标头。

std :: count()函数的语法:

    count( start_point , end_point , val/element);

参数:

  • start_point:从我们要开始搜索的位置或初始位置。

  • end_ point:直到要搜索元素或最终位置的终点。

  • val / elements:值或要搜索的元素。

返回值:返回给定范围内元素的出现次数。

例如:

    If the given string is:
    str="Nhoooisthebesttechenicalcontentplace"

    Then if we count no of 'e's:
    i.e. 
    count(str.begin(), str.end(), 'e');
    
    Output: 8

例外情况:

  • 当元素分配不正确或迭代器超出范围时,它将引发异常。

  • 如果参数无效,则显示未定义的行为。

时间复杂度:

O(n)是std :: count()函数在搜索之后的时间复杂度

输入输出格式:

    Input:
    arr[] = { 3, 2, 1, 3, 3, 5, 3 };
    n = sizeof(arr) / sizeof(arr[0]);
    count(arr, arr + n, 3);

    Output:
    4

    Input:
    str = "includehelp"; 
    count(str.begin(), str.end(), 'e'); 

    Output:
    2

C ++程序演示std :: count()函数的示例

/*
	C++ program to count the number of occurences of
	particular element in array ,string, vector,etc.
*/

#include<bits/stdc++.h>
using namespace std;

int main(){
	//整数数组arr的声明
	int arr[]={2,3,5,3,5,6,3,5,5,5,5,4,5,3,6,7};
	int s =sizeof(arr)/sizeof(arr[0]);

	//向量容器n的声明
	vector<int> n={1,2,3,4,2,2,2,5,5,3,2,2,2,7,2};

	//取一个字符串str-
	string str ="anagramandanagram";

	
	//在这里,我们在数组arr中搜索5的计数
	//你可以改变它也可为2,3,6 ......
	cout << "Number of times 5 appears :";
	cout << count(arr, arr + s, 5);
	
	//搜索2的计数
	//你可以改变它也可为5,3,6 ......
	cout << "\n\nNumber of times 2 appears : ";
	cout<<count(n.begin(), n.end(), 2);
	
	//搜索'a'的计数
	//您也可以根据需要更改b,c,d ..-	
	cout << "\n\nNumber of times 'a' appears : ";
	cout << count(str.begin(), str.end(), 'a');

	return 0;
}

输出结果

Number of times 5 appears :7 
 
Number of times 2 appears : 8
 
Number of times 'a' appears : 7