私はインターネットから引っ張ってきたこのコードを持っています。これが行うことは、2 つの文字列がアナグラムかどうかをチェックすることです。これは基本的に、同じ種類と量の文字で同じ量の文字を持っていることを意味します。たとえば、「scrap」と「craps」、「hear」と「hare」などです。など。とにかく、私の問題は、それがどのように機能するかを理解していないことです。誰かが私に少しの洞察を与えることができれば、それは役に立ちます! お時間をありがとうございました!それは有り難いです!具体的にはコードです。for ループの部分がわかりません。
boolean isAnagram(string s1, string s2) {
if (s1.length != s2.length)
return false;
char [] a1 = s1.toCharArray();
char [] a2 = s2.toCharArray();
for (int i = a1.length - 1; i >= 0; --i) {
int j;
for (j = a2.length - 1; j >= 0; --j) {
if (a1[i] == a2[j])
break;
}
if (j < 0)
return false;
}
return true;
}