当前位置: 首页 > article >正文

[LeetCode] 面试题01.02 判定是否互为字符重拍

题目描述:

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

示例 1:

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

示例 2:

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

说明:

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

题目链接:

. - 力扣(LeetCode)

解题主要思想:

如果s1和s2互为重排字符,那么s1和s2的长度一定是相等的。然后我们可以借助数组实现一个hash,判断s1的字符及数量是否和s2相同即可。

解题代码:
 

class Solution {
public:
    bool CheckPermutation(string s1, string s2) {
        if (s1.size() != s2.size()) return false;
        int map1[130];
        for (auto& c : s1) {
            ++map1[c];
        }
        for (auto& c : s2) {
            if ( map1[c] > 0) --map1[c];
            else return false;
        }
        return true;
    }
};

http://www.kler.cn/news/353626.html

相关文章:

  • 代码随想录 -- 贪心 -- 跳跃游戏
  • MapReduce工作机制源码解析
  • Kafka服务端SASL/PLAIN+ACL认证授权安装操作
  • 关于Git Bash中如何定义alias
  • 【2024软考高级架构师】论文篇——3、论Web系统的测试技术及其应用
  • 深入了解React 工作原理是什么
  • Docker 容器 数据卷 使用
  • leetcode 2536.子矩阵元素加一
  • @zabbix监控网站黑链接监控及数据推送
  • 深度学习-26-基于PyTorch的多层感知机DNN
  • Dubbo快速入门(二):第一个Dubbo程序(附源码)
  • Linux的习题+一道回溯类型的算法题
  • 数据结构--链表
  • Java 类和对象详解(上 )
  • 关于通信协议中PDCP的相关知识
  • WPF 已知问题 在 ObservableCollection 的 CollectionChanged 修改集合内容将让 UI 显示错误...
  • 【开源物联网平台】Fastbee系统稳定性和压测报告
  • Android 自定义Toast显示View
  • 【MySQL】数据库基础指令(一)
  • FlinkCDC 实现 MySQL 数据变更实时同步