二つの文字列の中の文字を素早く比較すると、完全に同じです。
問題:
二つの文字列があります。
str 1='abcdef'str 2='efabcd'
どのように速く2つの文字列の中の文字を比較しますか?2つの文字列の長さは同じです。文字の並べ替えだけが違っていて、重複した文字が現れる可能性があります。
==============================================================================================================
ソリューション:
二つの文字列があります。
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;
}
}
}