LeetCode 面试题 01.02. 判定是否互为字符重排
发布日期:2025-06-19 10:25:18 浏览次数:5 分类:精选文章

本文共 747 字,大约阅读时间需要 2 分钟。

要判断两个字符串是否可以通过重新排列字符得到对方,可以使用排序的方法。具体步骤如下:

  • 检查长度:首先,比较两个字符串的长度。如果长度不同,直接返回false,因为无法通过重新排列得到长度不同的字符串。

  • 排序字符串:对两个字符串进行排序。排序后,字符的顺序会按照升序排列。

  • 比较排序结果:比较两个排序后的字符串。如果完全相同,则返回true,否则返回false。

  • 这种方法简单且高效,能够正确处理各种情况,包括特殊字符和空字符串。

    题目

    给定两个字符串 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: bool CheckPermutation(string s1, string s2) {
    if(s1.size()!=s2.size()) return false; sort(s1.begin(),s1.end()); sort(s2.begin(),s2.end()); return s1 == s2;
    }
    上一篇:浅谈nn.Identity()
    下一篇:LeetCode 704. 二分查找 【二分】

    发表评论

    最新留言

    哈哈,博客排版真的漂亮呢~
    [***.90.31.176]2026年05月24日 08时34分59秒