मान लीजिए कि हमारे पास 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