एक स्ट्रिंग के अलग-अलग क्रमपरिवर्तन मुद्रित करने के लिए, जावा प्रोग्राम इस प्रकार है -
उदाहरण
आयात करें } विवरण झूठा है; } स्थिर ArrayList<स्ट्रिंग> विशिष्ट_पैटर्न(स्ट्रिंग str){ अगर (str.length() ==0){ ArrayListआउटपुट
स्ट्रिंग के विशिष्ट क्रमपरिवर्तन हैं [mnqm, nmqm, nqmm, mqnm, qmnm, qnmm, mqmn, qmmn, mnmq, nmmq, mmnq, mmqn]
डेमो नामक एक वर्ग में 'is_present' नाम का एक बूलियन फ़ंक्शन होता है जो यह देखने के लिए जाँच करता है कि क्या स्ट्रिंग वास्तव में मौजूद है। स्ट्रिंग में कुछ वर्ण हैं या नहीं, इस पर निर्भर करता है कि यह सही या गलत है। एक अन्य फ़ंक्शन जिसका नाम 'distinct_pattern' है, एक सरणी सूची बनाता है।
एक अन्य स्ट्रिंग को परिभाषित किया गया है, जिसका नाम 'rem_str' है, जो स्ट्रिंग के सबस्ट्रिंग को संग्रहीत करता है। इस 'विशिष्ट_कार्य' को 'rem_str' पास करके कहा जाता है। इस तरह, स्ट्रिंग को फिर से चालू किया जाता है, और एक और विशिष्ट क्रमपरिवर्तन उत्पन्न करने से पहले, प्रत्येक वर्ण की स्थिति की जाँच की जाती है। इस तरह, सभी डुप्लिकेट से बचा जाता है। अंत में, सभी अद्वितीय क्रमपरिवर्तन कंसोल पर प्रदर्शित होते हैं। Themain फ़ंक्शन स्ट्रिंग को परिभाषित करता है, और इस स्ट्रिंग पर फ़ंक्शन 'distinct_pattern' को कॉल किया जाता है। कंसोल पर प्रासंगिक आउटपुट प्रदर्शित होता है।