我是算法的新手,我需要實現一個快速搜索,使這個。例如我有這個序列快速算法查找和元素字符串
seq ="1111111145555666672222222222222222221111";
和我有元素搜索=「1」;
我需要一個算法(儘可能快)給我或元素(「1」)的數量在seq中存在或元素的數量不同於「1」的順序。
我是算法的新手,我需要實現一個快速搜索,使這個。例如我有這個序列快速算法查找和元素字符串
seq ="1111111145555666672222222222222222221111";
和我有元素搜索=「1」;
我需要一個算法(儘可能快)給我或元素(「1」)的數量在seq中存在或元素的數量不同於「1」的順序。
從您提供的示例字符串看,它看起來像字符串本質上未排序。在這種情況下,計算字符數的唯一方法是使字符串完整傳遞。
一個快速和骯髒的方式做到這將是與Count
擴展方法:
int count=seq.Count(c => c=='1');
使用正則表達式,你可以迅速找到所有比賽和他們的索引。
string pattern = "1";
string input = "1111111145555666672222222222222222221111";
foreach (Match m in Regex.Matches(input, pattern))
Console.WriteLine("'{0}' found at index {1}.",
m.Value, m.Index);
問題並不十分清楚,但如果要計算字符串中有多少「1」,只需循環字符串即可。
int count = 0;
foreach(char c in inputstring)
{
if(c.Equals('1'))
{
count++;
}
}
Debug.WriteLine(string.Format("Count: {0}", count));
你只是希望我們提供的代碼? – rene
看起來像功課。你有什麼嘗試?向我們展示一些您的代碼。 – Dariusz
算法是否必須在互聯網上或僅在字符串中查找所有「1」? –