zoukankan      html  css  js  c++  java
  • leetcode-242-有效的字母异位词

    问题:

    package com.example.demo;
    
    import java.util.Arrays;
    
    public class Test242 {
    
        /**
         * 判断是否是异位词
         * 分析:  (问题提示:都是小写字母的情况)
         * 利用桶站位,假如是异位词,则这两个字符串的长度相等,则遍历字符串,将第一个字符串中存在的字符时,在桶中+1,
         * 在第二个存在的字符,则桶中-1,当遍历完成之后,遍历数组,是否所有的位置都是0,如果都是0,则是异位,不都是0,则不是异位
         */
        public boolean isAnagram(String s, String t) {
            int len1 = s.length();
            int len2 = t.length();
            if (len1 != len2) {
                return false;
            }
    
            int cur = 0;
            int[] bucket = new int[26];
            while (cur < len1) {
                // 都是小写字母的情况
                int index1 = s.charAt(cur) - 'a';
                bucket[index1]++;
                int index2 = t.charAt(cur) - 'a';
                bucket[index2]--;
                cur++;
            }
            for (int i : bucket) {
                if (i != 0) {
                    return false;
                }
            }
            return true;
        }
    
        /**
         * 方法二:利用排序和比较字符串
         */
        public boolean isAnagram1(String s, String t) {
            if (s.length() != t.length()) {
                return false;
            }
            char[] chars = s.toCharArray();
            char[] chars1 = t.toCharArray();
            Arrays.sort(chars);
            Arrays.sort(chars1);
            return Arrays.equals(chars, chars1);
        }
    
        public static void main(String[] args) {
            Test242 t = new Test242();
            boolean anagram = t.isAnagram1("asdf", "fdas");
            System.out.println(anagram);
        }
    }
  • 相关阅读:
    Single Number 解答
    Minimum Size Subarray Sum 解答
    Valid Anagram 解答
    Count Primes 解答
    fullCalendar 日历显示每天数据调用方法实践
    jqGrid列的统计
    关于 asp.net Web Api 上传文件请求内容过大404错误记录
    My97DatePicker只显示月份
    js 宏微任务执行顺序
    git 等官网下载慢方法
  • 原文地址:https://www.cnblogs.com/nxzblogs/p/11274716.html
Copyright © 2011-2022 走看看