में एक शब्द है, यह शब्द परिदृश्य है, एक शब्द को प्रत्येक चरण में एक शब्द से एक वर्ण को हटा दें जैसे कि कम शब्द अभी भी एक शब्द है शब्दकोश। जारी रखें जब तक कोई अक्षर नहीं छोड़ा जाता है।एल्गोरिदम एक शब्द से एक चरित्र को हटाने के लिए जैसे कि कम शब्द अभी भी
यहां पकड़ है: आपको सही चरित्र को हटाने की आवश्यकता है, उदाहरण के लिए। एक शब्द में दो संभव वर्ण हो सकते हैं जिन्हें हटाया जा सकता है और दोनों कम शब्द को वैध शब्द मान सकते हैं, लेकिन बाद के चरण में कोई अंत तक कम हो सकता है यानी कोई वर्ण नहीं छोड़ा जा सकता है जबकि दूसरा लटका सकता है।
उदाहरण:
- ग्रह
- संयंत्र
- पैंट
- पैन
- एक
- एक
या
- ग्रह
- विमान
- लेन
- संभव आगे नहीं, मान लीजिए लैन एक शब्द नहीं है। आशा है कि आपको विचार मिल जाएगा।
कृपया मेरा कोड देखें, मैं रिकर्सन का उपयोग कर रहा हूं, लेकिन यह जानना चाहूंगा कि ऐसा करने के लिए बेहतर कुशल समाधान हैं या नहीं।
public class isMashable
{
static void initiate(String s)
{
mash("", s);
}
static void mash(String prefix, String s)
{
int N = s.length();
String subs = "";
if (!((s.trim()).equals("")))
System.out.println(s);
for (int i = 0 ; i < N ; i++)
{
subs = s.substring(0, i) + s.substring(i+1, N);
if (subs.equals("abc")||subs.equals("bc")||subs.equals("c")||subs.equals("a")) // check in dictionary here
mash("" + s.charAt(i), subs);
}
}
public static void main(String[] args)
{
String s = "abc";
initiate(s);
}
}
आपके पास एक शब्द होना चाहिए (जैसे 'मानचित्र <स्ट्रिंग, इंटीजर>') या यह जांचने के लिए कि कोई वास्तविक शब्द अभी भी एक वैध शब्द है। साथ ही, आपको अपने पूरे शब्द के सबस्ट्रिंग भेजने की बजाय अक्षर संयोजन शब्द भेजने की कोशिश करनी चाहिए। उदाहरण के लिए, यदि आप अपने एल्गोरिदम द्वारा 'ग्रह' भेजते हैं, तो आप 'पालतू' संयोजन का परीक्षण करने में सक्षम नहीं होंगे। –
जावास्क्रिप्ट उदाहरण (चेतावनी: जेएसफ़िडल थोड़ा धीमा है): http://jsfiddle.net/BA8PJ/ – biziclop
आप प्रत्येक शब्द वाले नोड के रूप में निर्देशित ग्राफ का उपयोग करना चाहेंगे। आप नोड ए से नोड बी के लिए किनारे बनाते हैं यदि ए से बी को केवल एक अक्षर को हटाने के लिए संभव है। ग्राफ निर्माण को सरल बनाने के लिए, आप पहले अक्षर को खत्म करने का प्रयास करने से पहले शब्द की लंबाई का परीक्षण करते हैं। – Atmocreations