यहां हम देखेंगे कि स्ट्रिंग्स की सूची को उनकी लंबाई के आधार पर कैसे सॉर्ट किया जाए। इसलिए यदि किसी स्ट्रिंग में वर्णों की संख्या कम है, तो उसे पहले रखा जाएगा, फिर अन्य लंबी स्ट्रिंग्स रखी जाएंगी। मान लीजिए कि तार हैं
str_list = {“Hello”, “ABC”, “Programming”, “Length”, “Population”}
छँटाई के बाद, वे होंगे -
str_list = {“ABC”, “Hello”, “Length”, “Population”, “Programming”}
यहां हम उन्हें छांटने के लिए अपना खुद का तुलना तर्क बनाएंगे। उस तुलना तर्क का उपयोग C++ STL में सॉर्ट फ़ंक्शन में किया जाएगा।
एल्गोरिदम
compare(str1, str2): Begin if length of str1 < length of str2, then return 1 return 0 End
उदाहरण
#include<iostream> #include<algorithm> using namespace std; int compare(string str1, string str2){ if(str1.length() < str2.length()) return 1; return 0; } main(){ string str_list[] = {"Hello", "ABC", "Programming", "Length", "Population"}; int n = 5; sort(str_list, str_list + n, compare); for(int i = 0; i<n; i++){ cout << str_list[i] << " "; } }
आउटपुट
ABC Hello Length Population Programming