二つの文字列の中の文字を素早く比較すると、完全に同じです。


問題:
二つの文字列があります。
str 1='abcdef'str 2='efabcd'
どのように速く2つの文字列の中の文字を比較しますか?2つの文字列の長さは同じです。文字の並べ替えだけが違っていて、重複した文字が現れる可能性があります。
==============================================================================================================
ソリューション:
/**
 *     :   
 * 
 * @author dell
 */
public class Test
{
 public static void main(String[] args)
 {

  String str1 = "abbcde";
  String str2 = "edcabb";
  if (validateStrings(str1, str2))
  {
   System.out.println("            ");
  }
  else
  {
   System.out.println("             ");
  }
 }

 /**
  *   :                。<br>
  *   :                 0.                     ,<br>
  *                  ,             。<br>
  * 
  * @param str1
  * @param str2
  * @return
  */
 public static boolean validateStrings(String str1, String str2)
 {

  // //            
  if (str1.length() != str2.length())
  {
   return false;
  }
  char[] str1Chars = str1.toCharArray();
  char[] str2Chars = str2.toCharArray();
  int i = 1;
  for (char c : str1Chars)
  {
   i ^= c;
  }
  for (char c : str2Chars)
  {
   i ^= c;
  }
  if (i == 1)
  {
   return true;
  }
  else
  {
   return false;
  }
 }
}