码迷,mamicode.com
首页 > 其他好文 > 详细

LeetCode: Valid Anagram

时间:2015-08-27 18:49:59      阅读:177      评论:0      收藏:0      [点我收藏+]

标签:

题目链接:https://leetcode.com/problems/valid-anagram/

题目

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

For example,
s = "anagram", t = "nagaram", return true.
s = "rat", t = "car", return false.

Note:
You may assume the string contains only lowercase alphabets.

题意:判断两个字符串的组成字母是否相同(包括字母个数)

分析:主要就是题意上的理解问题。

方法1:转为字符数组排序

public boolean isAnagram(String s, String t) {		
		char[] s1 = s.toCharArray();
		char[] t1 = t.toCharArray();
		
		Arrays.sort(s1);
		Arrays.sort(t1);
		
		return String.valueOf(s1).equals(String.valueOf(t1));
	}
方法2:统计组成字符串的字符数量
public class Solution {
    public boolean isAnagram(String s, String t) {
        int[] zimu = new int[26];
        
        for(int i=0; i<s.length(); i++)
            zimu[s.charAt(i)-'a']++;
        
        for(int i=0; i<t.length(); i++)
            zimu[t.charAt(i)-'a']--;
        
        for(int i=0; i<26; i++)
            if(zimu[i] != 0)
                return false;
    
        return true;
    }
}



版权声明:本文为博主原创文章,未经博主允许不得转载。

LeetCode: Valid Anagram

标签:

原文地址:http://blog.csdn.net/yangyao_iphone/article/details/48030139

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!