मैं दो तारों के बीच सभी सामान्य सबस्ट्रिंग खोजने के लिए सी # पर काम कर रहा हूं। उदाहरण के लिए, यदि इनपुट है: एस 1 =दो स्ट्रिंग्स के बीच सभी सामान्य सबस्ट्रिंग्स
नीचे कोड देता है सबसे लंबे समय तक आम एस 2 = "जरूरत ईमेल सहायता" "ईमेल के साथ asssitance की जरूरत है"
उत्पादन है- चाहिए 'सहायता ईमेल की जरूरत है' सबस्ट्रिंग, लेकिन मैं चाहता हूं कि मेरा कोड सभी सामान्य सबस्ट्रिंग्स को वापस कर दे। किसी भी प्रकार की मदद की बेहद सराहना की जाती है!
static void commonsubstrings()
{
input1 = "need asssitance with email";
input2 = "email assistance needed"
if (input2.Length > input1.Length)
{
swap = input1;
input1 = input2;
input2 = swap;
}
int k = 1;
String temp;
String longTemp = "";
for (int i = 0; (i <= input1.Length); i++)
{
if ((i == input1.Length))
{
if (longest != null)
{
k = longest.Length + 1;
}
else
{
k = 1;
}
temp = input1.Substring(1, input1.Length - 1);
if (temp.Equals(""))
{
break;
}
if (k <= temp.Length)
{
i = k - 1;
input1 = temp;
if ((longest != null) && (longest.Length > longTemp.Length))
{
longTemp = longest;
}
}
}
holder1 = input1.Substring(0, k);
for (int j = 0; (j < input2.Length) && (j + k <= input2.Length); j++)
{
check1 = input2.Substring(j, k);
if (holder1.Equals(check1))
{
longest = holder1;
break;
}
}
k++;
}
Console.WriteLine(longest);
Console.ReadLine();
}
क्या परिणाम किसी भी क्रम में होना चाहिए? – nerdybeardo
सभी आम सबस्ट्रिंग्स? एकल पात्र? क्या "एमा" और "एमाई" और "ईमेल" तीन अलग मिलान करने वाले सबस्ट्रिंग हैं? – Amy
क्या आपके पास इनपुट 1 में बहुत से "अक्षर" वर्ण हैं? क्या सवाल या टाइपो का वह हिस्सा है? क्या आप यह कहने की कोशिश कर रहे हैं कि "asssistance" और "सहायता" आम हैं? –