C#使用二分查找法判断指定字符的方法

2019-12-30 12:59:21于海丽

本文实例讲述了C#使用二分查找法判断指定字符的方法。,具体如下:


private int sort_init(ref string[] chars, string str) //数组初始化
{
  string[] temp = str.Split(' ');
  //temp.
  chars = new string[temp.Count()];
  int ndx = 0;
  int last_empty_positon = 0;
  foreach (string ch in temp)
  {
   ndx = last_empty_positon++;
   chars[ndx] = ch;
   if (ndx == 0) continue;
   if (ch.Length == 0) continue;
   while (chars[ndx].CompareTo(chars[ndx - 1]) < 0)
   {
    string s = chars[ndx];
    chars[ndx] = chars[ndx - 1];
    chars[ndx - 1] = s;
    ndx--;
    if (ndx == 0) break;
   }
  }
  return 1;
}


private bool isTheString(string str) //判断是否为指定字符
{
   int end = stopChar.Length - 1;
   int begin = 0;
   while (end - begin > 1)
   {
    int mid = (end + begin) / 2;
    if (stopChar[mid].CompareTo(str) > 0)
     end = mid;
    else if (stopChar[mid].CompareTo(str) < 0)
     begin = mid;
    else
     return true;
   }
   if (stopChar[end].CompareTo(str) == 0 || stopChar[begin].CompareTo(str) == 0)
    return true;
   return false;
}


注:相关教程知识阅读请移步到c#教程频道。