面试题 01.02. 判定是否互为字符重排
题意
给定两个字符串 s1 和 s2,请编写一个程序,确定其中一个字符串的字符重新排列后,能否变成另一个字符串。
示例 1:
输入: s1 = "abc", s2 = "bca"
输出: true
示例 2:
输入: s1 = "abc", s2 = "bad"
输出: false
说明:
0 <= len(s1) <= 100
0 <= len(s2) <= 100
题解
class Solution {
public boolean CheckPermutation(String s1, String s2) {
int len1 = s1.length();
int len2 = s2.length();
if(len1!=len2) return false;
Map<Character,Integer> map = new HashMap<>();
for(int i=0;i<len1;i++){
map.put(s1.charAt(i),map.getOrDefault(s1.charAt(i),0)+1);
}
for(int i=0;i<len2;i++){
if(!map.containsKey(s2.charAt(i))||map.get(s2.charAt(i))==0) return false;
map.put(s2.charAt(i),map.get(s2.charAt(i))-1);
}
return true;
}
}

相关推荐
BootCamp01FrontEnd
BootCamp01FrontEnd
ignite-desafio-01
ignite-desafio-01
易语言源码ZCL-控件类库1.01
易语言源码ZCL_控件类库1.01
Linux培训视频.zip
目录网盘文件永久链接 01-开班说明及重要学习思维思想 02-计算机硬件及组成原理知识 03-企业运维规划及Linux介绍虚拟环境搭建 04-企业级Linux安装及远程连接知识实践 05-Linux bash核心介绍及目录命令讲解 06-Linux重要目录结构及目录命令讲解 07-文件处理命令重要知识讲解 08-别名-重定向-去重排序等 09-Linux文件类型及查找文件精讲 10-Linux系统打包和时间命令及案例精讲 11-Linux系统inode及链接知识及企业按哪里精讲 12-Linux系统用户管理知识精讲1 13-Linux系统用户管理知识精讲2 14-Linux系统基础权限知识精讲 15-Linux系统特殊权限知识精讲 16-Linux通配符和特殊字符知识 17-Linux正则表达式知识精讲 18-三剑客入门知识与配合正则实践 19-三剑客之awk实践及考试题讲 20-磁盘管理-内外部结构及逻辑知识 21-磁盘管理之raid及分区 22-磁盘管理之分区与格式化企业案例 23-磁盘管理与软件包管理1 24-yum与rpm软件包管理2 25-Linux系统进程核心知识1....
疯狂XML讲义 源码1-7
疯狂XML讲义 源码 第1-7章 codes


