C++中統計向量中匹配目標值或條件的元素個數
給定一個向量,任務是計算向量中與目標值或條件匹配的元素個數。
向量是可以改變大小的序列容器。容器是一個儲存相同型別資料的物件。序列容器嚴格按線性順序儲存元素。
向量將元素儲存在連續的記憶體位置,並允許使用下標運算子 [] 直接訪問任何元素。與陣列不同,向量可以在執行時根據需要縮小或擴充套件。向量的儲存由系統自動處理。
為了支援執行時的縮小和擴充套件功能,向量容器可能會分配一些額外的儲存空間來適應可能的增長,因此容器的實際容量大於大小。因此,與陣列相比,向量消耗更多記憶體,但可以有效地管理儲存並動態增長。
例如
Input − vector vec = {1, 2, 3, 4, 4, 4, 4}
Target = 4
Output − count is: 4說明 − 在給定的向量中,目標值出現了4次,因此計數為4
Input − vector vec = {1, 2, 3}
Target = 4
Output − count is: 0說明 − 在給定的向量中,目標值出現了0次,因此計數為0
下面程式中使用的方案如下
輸入向量並將其儲存在一個向量型別變數中,例如vec
將目標值設定為整數值
取一個臨時變數來儲存計數
呼叫C++ STL中提供的內建count函式,並將vec.begin(),vec.end(),target傳遞給函式呼叫
列印結果。
示例
#include <algorithm>
#include <iostream>
#include <vector>
using namespace std;
int main(){
vector<int> myvector{ 1, 2, 3, 4, 4, 4, 4, 4 };
int target = 4;
int res = count(myvector.begin(), myvector.end(), target);
cout << "Target is: " << target << "\nCount is: " << res << endl;
return 0;
}輸出
如果執行以上程式碼,我們將得到以下輸出:
Target is: 4 Count is: 5
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP