Intersection of two strings in Java

前端 未结 10 1333
春和景丽
春和景丽 2020-11-30 07:48

Need a Java function to find intersection of two strings. i.e. characters common to the strings.

Example:

String s1 = new String(\"Sychelless\");
St         


        
10条回答
  •  感情败类
    2020-11-30 08:40

    Using HashSet:

    HashSet h1 = new HashSet(), h2 = new HashSet();
    for(int i = 0; i < s1.length(); i++)                                            
    {
      h1.add(s1.charAt(i));
    }
    for(int i = 0; i < s2.length(); i++)
    {
      h2.add(s2.charAt(i));
    }
    h1.retainAll(h2);
    Character[] res = h1.toArray(new Character[0]);
    

    This is O(m + n), which is asymptotically optimal.

提交回复
热议问题