• 字符重排


    此博客链接:https://www.cnblogs.com/ping2yingshi/p/14017921.html

    字符重排

    题目

    题目链接:https://leetcode-cn.com/problems/check-permutation-lcci/

    给定两个字符串 s1 和 s2,请编写一个程序,确定其中一个字符串的字符重新排列后,能否变成另一个字符串。

    示例 1:

    输入: s1 = "abc", s2 = "bca"
    输出: true
    示例 2:

    输入: s1 = "abc", s2 = "bad"
    输出: false
    说明:

    0 <= len(s1) <= 100
    0 <= len(s2) <= 100

    题解

    题意:一个字符串的每个字母和另外一个字符串的每个字母一样。

    思路:判断一个字符串中的每个字符是否在另外一个字符串中都存在,并且个数相等。

    方法:

            1.先判断两个字符串长度是都相等,如果长度都不相等,那么其中一个字符串经过重排一定不肯能变成另外一个字符串。

            2.长度相等时,判断两个字符串中相同字母出现的次数是否相等,如果不相等,那么其中一个字符串经过重排一定不肯能变成另外一个字符串。

     代码

    class Solution {
        public boolean CheckPermutation(String s1, String s2) {
            int len1=s1.length();
            int len2=s2.length();
            if(len1!=len2)
               return false;
            char emp []={'a','b','c','d','e','f','g','h','i','g','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','A','B','C','D','E','F','G','H','I','G','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'};
    
            //char datas[] = {'a', 'b', 'c'};
            //最多52个不同字母,26个大小写
            int result1[]=new int[52];
            int result2[]=new int[52];
            if(len1==len2){
                //先判断第一个字符串中每种字母包含多少个
                for(int i=0;i<52;i++)
                {
                   for(int j=0;j<len1;j++)
                   {
                      if(emp[i]==s1.charAt(j))
                          result1[i]++;
                   }
                }
                for(int i=0;i<52;i++)
                {
                    for(int j=0;j<len2;j++)
                    {
                        if(emp[i]==s2.charAt(j))
                          result2[i]++;
                    }
                }
            }
            for(int i=0;i<52;i++)
            {
                if(result1[i]!=result2[i])
                    return false;
            }
          return true;
        }
    }
    出来混总是要还的
  • 相关阅读:
    魅族note手机 图片打马赛克
    魅蓝note手机一键root
    eclipse启动时return code 13
    Eclipse adt 23中运行百度地图官网上的demo出现fatal错误
    windows上部署svn服务器
    windows下jenkins slave 搭建
    图片懒加载
    tomcat7 设置静态资源的expires过期时间
    如何将不带www的根域名301重定向到带www的主域名
    简单的防止图片另存为
  • 原文地址:https://www.cnblogs.com/ping2yingshi/p/14017921.html
Copyright © 2020-2023  润新知