এখানে আমরা দেখব কীভাবে একটি স্ট্রিং লিস্ট কে তাদের দৈর্ঘ্য অনুযায়ী সর্ট করা যায়। যেটির ক্যারেক্টার সংখ্যা কম, সেটি প্রথমে থাকবে, তারপর বড় দৈর্ঘ্যের স্ট্রিং গুলো থাকবে। মনে করুন স্ট্রিং গুলো হল:
str_list = {"Hello", "ABC", "Programming", "Length", "Population"}
সর্ট করার পর ভাব হবে -
str_list = {"ABC", "Hello", "Length", "Population", "Programming"}
এখানে আমরা নিজাদের কমপারিজন লজিক তৈরি করব সর্ট করার জন্য। সেই কমপারিজন লজিকটি C++ STL-র সর্ট ফাংশনে ব্যবহার করা হবে।
অ্যালগরিদম
compare(str1, str2):
শুরু
যদি str1-এর দৈর্ঘ্য < str2-এর দৈর্ঘ্য, তবে
1 রিটার্ন করো
0 রিটার্ন করো
শেষ
উদাহরণ (C++ কোড)
#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