本文实例讲述了C#使用二分查找法判断指定字符的方法。分享给大家供大家参考,具体如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
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; } |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
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#程序设计有所帮助。