查找某些字符是否在另一个字符串里出现的高效算法

需求例子:

字符串A:yzl

字符串B:yangzhiping

需要得到的结果是:yz

代码:

 1 /**
 2   * 查询a字符串里的字符有哪些在b字符串里出现
 3   */
 4  public static void main(String[] args) {
 5       String a = "abcd,efg";
 6       String b = ")(*&b^%$#@![]{},.///;:'? a<>";
 7       byte[] bb = new byte[256];
 8       char[] cs = b.toCharArray();
 9       for (char c : cs) {
10            bb[c] = 1;
11       }
12       cs = a.toCharArray();
13       for (char c : cs) {
14            if (bb[c] == 1) {
15                 System.out.println(c);
16            }
17       }
18  }
19 ------------------------------ 
20 运行结果为:
21 a
22 b
23 , 

 

posted @ 2013-01-28 15:59  自行车上的程序员  阅读(433)  评论(0编辑  收藏  举报