zoukankan      html  css  js  c++  java
  • [leetcode]242. Valid Anagram验证变位词

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

    Example 1:

    Input: s = "anagram", t = "nagaram"
    Output: true

    Example 2:

    Input: s = "rat", t = "car"
    Output: false

    题意:

    验证变位词

    何谓anagram?  

    思路:

    用int[] map = new int[256]代表一个简化版的HashMap

    挨个扫字符串s的每个字符,在map里标注++

    挨个扫字符串t的每个字符,在map里标注--

    根据valid anagram属性, map里最终应该都该为0。

    代码:

     1 class Solution {
     2     public boolean isAnagram(String s, String t) {
     3         if(s.length() != t.length()) return false;
     4         int[] map = new int[256];
     5         for(int i = 0 ; i < s.length(); i++){
     6             map[s.charAt(i)]++;
     7             map[t.charAt(i)]--;
     8         }
     9         for(int i : map){
    10             if(i != 0){
    11                 return false;
    12             }
    13         }  
    14         return true;     
    15     }
    16 }
  • 相关阅读:
    快速排序
    冒泡排序
    桶排序
    Writer及其子类
    Reader及其子类
    OutputStream及其子类
    InputStream及其子类
    基础IO类和相关方法
    File类
    枚举
  • 原文地址:https://www.cnblogs.com/liuliu5151/p/9142877.html
Copyright © 2011-2022 走看看