เราจะมาดูวิธีการหาความถี่ขององค์ประกอบที่เล็กที่สุดในอาร์เรย์ สมมติว่าองค์ประกอบอาร์เรย์คือ [5, 3, 6, 9, 3, 7, 5, 8, 3, 12, 3, 10] องค์ประกอบที่เล็กที่สุดคือ 3 และความถี่ขององค์ประกอบนี้คือ 4 ดังนั้นเอาต์พุตคือ 4 .
เพื่อแก้ปัญหานี้ เราจะหาองค์ประกอบที่เล็กที่สุดของรายการ จากนั้นเราจะนับการเกิดขึ้นของตัวเลขแรก และนั่นจะเป็นผลลัพธ์
ตัวอย่าง
#include<iostream> using namespace std; int min_element(int arr[], int n){ int min = arr[0]; for(int i = 1; i<n; i++){ if(arr[i] < min) min = arr[i]; } return min; } int smallestNumFreq(int *arr, int n) { int minimum = min_element(arr, n); int count = 0; for(int i = 0; i < n; i++){ if(arr[i] == minimum) count++; } return count; } int main() { int arr[] = {5, 3, 6, 9, 3, 7, 5, 8, 3, 12, 3, 10}; int n = sizeof(arr) / sizeof(arr[0]); cout << "Frequency of smallest element: " << smallestNumFreq(arr, n); }
ผลลัพธ์
Frequency of smallest element: 4