Trong hướng dẫn này, chúng ta sẽ viết một chương trình tìm phần tử lặp lại trong mảng đã cho.
Hãy xem các bước để giải quyết vấn đề.
-
Khởi tạo mảng.
-
Khởi tạo bản đồ bộ đếm để lưu trữ tần suất của từng phần tử trong mảng.
-
Lặp lại trên mảng.
-
Đếm từng phần tử.
-
-
In phần tử có tần số lớn hơn 1.
Ví dụ
Hãy xem mã.
#include <bits/stdc++.h> using namespace std; int findRepeatingElement(int arr[], int n) { map<int, int> frequencies; for (int i = 0; i < n; i++) { map<int, int>::iterator itr = frequencies.find(arr[i]); if (itr != frequencies.end()) { itr->second = itr->second + 1; } else { frequencies.insert({arr[i], 1}); } } for (map<int, int>::iterator itr = frequencies.begin(); itr != frequencies.end(); ++itr) { if (itr->second > 1) { return itr->first; } } } int main() { int arr[] = {1, 2, 3, 3, 4, 5, 5, 6}; cout << findRepeatingElement(arr, 8) << endl; return 0; }
Đầu ra
Nếu bạn chạy đoạn mã trên, thì bạn sẽ nhận được kết quả sau
3
Kết luận
Nếu bạn có bất kỳ câu hỏi nào trong hướng dẫn, hãy đề cập đến chúng trong phần bình luận.