How to find the Item with Minimum Number of Occurrences in a Vector in C++ - Step by Step Examples
How to find the Item with Minimum Number of Occurrences in a Vector in C++ ?
Answer
To find the item with the minimum number of occurrences in a Vector in C++, you can use an unordered_map to count the occurrences of each item and then find the item with the minimum count.
✐ Examples
1 Find Item with Minimum Occurrences in a Vector of Strings
In this example,
- We start by including the necessary headers:
<iostream>
,<vector>
, and<unordered_map>
. - We create a vector named
vec
containing several string elements. - We create an unordered_map named
counts
to store the occurrences of each string in the vector. The keys of the unordered_map will be the strings, and the values will be their counts. - We use a range-based
for
loop to iterate through each element in the vector. For each element, we increment its count in the unordered_map. - We initialize two variables,
min_item
andmin_count
, to keep track of the item with the minimum occurrences and its count.min_count
is initialized toINT_MAX
to ensure any count will be lower initially. - We iterate through the unordered_map to find the item with the lowest count. If we find an item with a count lower than
min_count
, we updatemin_item
andmin_count
. - Finally, we print the item with the minimum number of occurrences to standard output using
std::cout
.
C++ Program
#include <iostream>
#include <vector>
#include <unordered_map>
#include <climits>
int main() {
// Step 2: Create a vector of strings
std::vector<std::string> vec = {"apple", "banana", "apple", "orange", "banana", "apple", "kiwi"};
// Step 3: Create an unordered_map to count occurrences
std::unordered_map<std::string, int> counts;
// Step 4: Count occurrences of each item in the vector
for (const auto& item : vec) {
counts[item]++;
}
// Step 5: Initialize variables to find the item with the minimum occurrences
std::string min_item;
int min_count = INT_MAX;
// Step 6: Iterate through the unordered_map to find the item with the lowest count
for (const auto& pair : counts) {
if (pair.second < min_count) {
min_item = pair.first;
min_count = pair.second;
}
}
// Step 7: Print the item with the minimum occurrences
std::cout << "Item with minimum occurrences: " << min_item << std::endl;
return 0;
}
Output
Item with minimum occurrences: kiwi
2 Find Item with Minimum Occurrences in a Vector of Integers
In this example,
- We start by including the necessary headers:
<iostream>
,<vector>
, and<unordered_map>
. - We create a vector named
vec
containing several integer elements. - We create an unordered_map named
counts
to store the occurrences of each integer in the vector. The keys of the unordered_map will be the integers, and the values will be their counts. - We use a range-based
for
loop to iterate through each element in the vector. For each element, we increment its count in the unordered_map. - We initialize two variables,
min_item
andmin_count
, to keep track of the item with the minimum occurrences and its count.min_count
is initialized toINT_MAX
to ensure any count will be lower initially. - We iterate through the unordered_map to find the item with the lowest count. If we find an item with a count lower than
min_count
, we updatemin_item
andmin_count
. - Finally, we print the item with the minimum number of occurrences to standard output using
std::cout
.
C++ Program
#include <iostream>
#include <vector>
#include <unordered_map>
#include <climits>
int main() {
// Step 2: Create a vector of integers
std::vector<int> vec = {1, 2, 3, 1, 2, 1, 4, 1, 5, 1};
// Step 3: Create an unordered_map to count occurrences
std::unordered_map<int, int> counts;
// Step 4: Count occurrences of each item in the vector
for (const auto& item : vec) {
counts[item]++;
}
// Step 5: Initialize variables to find the item with the minimum occurrences
int min_item = 0;
int min_count = INT_MAX;
// Step 6: Iterate through the unordered_map to find the item with the lowest count
for (const auto& pair : counts) {
if (pair.second < min_count) {
min_item = pair.first;
min_count = pair.second;
}
}
// Step 7: Print the item with the minimum occurrences
std::cout << "Item with minimum occurrences: " << min_item << std::endl;
return 0;
}
Output
Item with minimum occurrences: 3
Summary
In this tutorial, we learned How to find the Item with Minimum Number of Occurrences in a Vector in C++ language with well detailed examples.
More C++ Vectors Tutorials
- How to create an Empty Vector in C++ ?
- How to Initialize a Vector in C++ ?
- How to Get Length of a Vector in C++ ?
- How to create a Vector of Size N in C++ ?
- How to create a Vector of Numbers from 1 to N in C++ ?
- How to create a Vector of Integers in C++ ?
- How to create a Vector of Strings in C++ ?
- How to create a Vector of Empty Vectors in C++ ?
- How to Access Items in a Vector in C++ ?
- How to get Item in a Vector at a Specific Index in C++ ?
- How to get First Item in a Vector in C++ ?
- How to get Last Item in a Vector in C++ ?
- How to Iterate Over a Vector in C++ ?
- How to Iterate Over a Vector with Index in C++ ?
- How to Iterate Over a Vector in Reverse Order in C++ ?
- How to check if a Vector is Empty in C++ ?
- How to check if a Vector is Not Empty in C++ ?
- How to get Sub Vector in C++ ?
- How to get the Index of Specified Item in a Vector in C++ ?
- How to check if a Specific Item is present in the Vector in C++ ?
- How to check if a Vector contains all the items of Another Vector in C++ ?
- How to count the Number of Occurrences of Specific Item in the Vector in C++ ?
- How to find the Item with Maximum Number of Occurrences in a Vector in C++ ?
- How to find the Item with Minimum Number of Occurrences in a Vector in C++ ?
- How to Sort a Vector in C++ ?
- How to Sort a Vector in Ascending Order in C++ ?
- How to Sort a Vector in Descending Order in C++ ?
- How to create a Two Dimensional Vector in C++ ?
- How to Iterate over a Two Dimensional Vector in C++ ?
- How to create a Three Dimensional Vector in C++ ?
- How to Copy a Vector in C++ ?
- How to Split a Vector in C++ ?
- How to Join Vectors in C++ ?
- How to Append an Item to a Vector in C++ ?
- How to Insert an Item at Specific Index in a Vector in C++ ?
- How to Append a Vector to another Vector in C++ ?
- How to Concatenate Two Vectors in C++ ?
- How to check if Two Vectors are Equal in C++ ?
- How to check if Two Vectors have Same Items (Regardless of Order) in C++ ?
- How to Convert a Vector of Integers to a Vector of Strings in C++ ?
- How to Convert a Vector of Strings to a Vector of Integers in C++ ?
- How to Convert a Vector of Floats to a Vector of Strings in C++ ?
- How to Convert a Vector of Strings to a Vector of Floats in C++ ?
- How to Reverse a Vector in C++ ?
- How to Shuffle a Vector in C++ ?
- How to Slice a Vector in C++ ?
- How to get First N Items from a Vector in C++ ?
- How to get Last N Items from a Vector in C++ ?
- How to Rotate Items in a Vector in C++ ?
- How to Filter Items of a Vector based on a Condition in C++ ?
- How to Remove Duplicates in a Vector in C++ ?
- How to Remove Item at a Specific Index from a Vector in C++ ?
- How to Remove Specific Item from a Vector in C++ ?
- How to Remove Items from Vector based on a Condition in C++ ?
- How to Sort a String Vector in Dictionary Order in C++ ?
- How to Concatenate Strings in Vector in C++ ?
- How to create a Vector of Vectors in C++ ?