天天看點

Leetcode242 Valid Anagram JAVA語言

1

2

3

4

<code>Given two strings s and t, write a function to determine if t is an anagram of s.</code>

<code>For example,</code>

<code>s = "anagram", t = "nagaram", return true.</code>

<code>s = "rat", t = "car", return false.</code>

題意:給的兩個字元串判斷是否是相同字元組成的不同字元串

5

6

7

8

9

10

11

12

13

14

15

16

17

<code>public</code> <code>class</code> <code>Solution {</code>

<code>    </code><code>public</code> <code>boolean</code> <code>isAnagram(String s, String t) {</code>

<code>        </code><code>int</code><code>[] ret=</code><code>new</code> <code>int</code><code>[</code><code>26</code><code>];</code>

<code>        </code><code>for</code><code>(</code><code>int</code> <code>i=</code><code>0</code><code>;i&lt;s.length();i++){</code>

<code>            </code><code>ret[s.charAt(i)-</code><code>'a'</code><code>]--;</code>

<code>        </code><code>}</code>

<code>        </code><code>for</code><code>(</code><code>int</code> <code>i=</code><code>0</code><code>;i&lt;t.length();i++){</code>

<code>            </code><code>++ret[t.charAt(i)-</code><code>'a'</code><code>];</code>

<code>        </code><code>for</code><code>(</code><code>int</code> <code>i=</code><code>0</code><code>;i&lt;</code><code>26</code><code>;i++){</code>

<code>            </code><code>if</code><code>(ret[i]!=</code><code>0</code><code>)</code>

<code>            </code><code>return</code> <code>false</code><code>;</code>

<code>        </code><code>return</code> <code>true</code><code>;</code>

<code>        </code> 

<code>    </code><code>}</code>

<code>}</code>

PS:參見之前的那個勒索信的那個,直接hash求出每個字元的數量即可

本文轉自 努力的C 51CTO部落格,原文連結:http://blog.51cto.com/fulin0532/1890860