मान लीजिए हमारे पास n तत्वों का एक ऐरे है। हमें ऐरे में पहला, दूसरा और तीसरा न्यूनतम तत्व खोजना है। पहला न्यूनतम ऐरे का न्यूनतम है, दूसरा न्यूनतम न्यूनतम है लेकिन पहले से बड़ा, और इसी तरह तीसरा न्यूनतम न्यूनतम है लेकिन दूसरे न्यूनतम से बड़ा।
प्रत्येक तत्व को स्कैन करें, फिर तत्व की जांच करें, और पहले, दूसरे और तीसरे न्यूनतम तत्वों की शर्तों को संबंधित करके इस समस्या को हल करें।
उदाहरण
#include <iostream>
using namespace std;
int getThreeMins(int arr[], int n) {
int first = INT_MAX, sec = INT_MAX, third = INT_MAX;
for (int i = 0; i < n; i++) {
if (arr[i] < first) {
third = sec;
sec = first;
first = arr[i];
} else if (arr[i] < sec) {
third = sec;
sec = arr[i];
} else if (arr[i] < third)
third = arr[i];
}
cout << "First min = " << first << endl;
cout << "Second min = " << sec << endl;
cout << "Third min = " << third << endl;
}
int main() {
int array[] = {4, 9, 18, 32, 12};
int n = sizeof(array) / sizeof(array[0]);
getThreeMins(array, n);
}
आउटपुट
First min = 4 Second min = 9 Third min = 12