网加思维做网站推广,做垂直网站,html5网站开发语言的有点,wordpress前端开发教程文章目录 一、题目二、C# 题解 一、题目 给定两个由小写字母组成的字符串 s1 和 s2#xff0c;请编写一个程序#xff0c;确定其中一个字符串的字符重新排列后#xff0c;能否变成另一个字符串#xff0c;点击此处跳转。
示例 1#xff1a; 输入: s1 “abc”, s2 “… 文章目录 一、题目二、C# 题解 一、题目 给定两个由小写字母组成的字符串 s1 和 s2请编写一个程序确定其中一个字符串的字符重新排列后能否变成另一个字符串点击此处跳转。
示例 1 输入: s1 “abc”, s2 “bca” 输出: true 示例 2 输入: s1 “abc”, s2 “bad” 输出: false 说明
0 len(s1) 1000 len(s2) 100
二、C# 题解 与 LeetCode 面试题 01.01. 判定字符是否唯一 题目类似使用数组记录出现次数各个字符出现次数一样则重排后结果一致。
public class Solution {public bool CheckPermutation(string s1, string s2) {int l1 s1.Length, l2 s2.Length;if (l1 ! l2) return false; // 如果长度都不相等则必为 falseint[] count new int[26]; // 数组计数for (int i 0; i l1; i) {count[s1[i] - a]; // s1 中出现的字符记录为 1 次count[s2[i] - a]--; // s2 中出现的字符记录为 - 1 次}for (int i 0; i count.Length; i) {if (count[i] ! 0) return false; // 若最后记录结果不为 0则返回 false}return true; // 否则返回 true}
}时间复杂度 O ( n ) O(n) O(n)。空间复杂度 O ( 1 ) O(1) O(1)取决于出现字符的种类多少。