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

【力扣专题栏】面试题 01.02. 判定是否互为字符重排,如何利用数组模拟哈希表解决两字符串互排问题?

在这里插入图片描述

题解目录

  • 1、题目描述+解释
    • 2、算法原理解析
      • 3、代码编写
        • (1)、两个数组分别模拟哈希表解决
        • (2)、利用一个数组模拟哈希表解决问题

1、题目描述+解释

在这里插入图片描述

2、算法原理解析

这里是引用

3、代码编写

(1)、两个数组分别模拟哈希表解决
class Solution {
public:
    bool CheckPermutation(string s1, string s2) {
        if(s1.size()!=s2.size())
        {
            return false;
        }
        //创建数组
        int hash_s1[26]={0};
        int hash_s2[26]={0};

        //遍历第一个字符串
        for(auto e1:s1)
        {
            hash_s1[e1-'a']++;
        }
        //遍历第二个字符串
        for(auto e2:s2)
        {
            hash_s2[e2-'a']++;
        }
        //判断两个哈希里面值是否相等
        int i=0;
        for(i=0;i<26;i++)
        {
            if(hash_s1[i]!=hash_s2[i])
            {
                return false;
            }
        }
        return true;
    }
};
(2)、利用一个数组模拟哈希表解决问题
class Solution {
public:
    bool CheckPermutation(string s1, string s2) {
        //判断个数
        if(s1.size()!=s2.size())
        {
            return false;
        }
        //创建数组模拟哈希表
        int hash[26]={0};
        //遍历第一个字符串
        for(auto e : s1)
        {
            hash[e-'a']++;
        }
        //遍历第二个字符串
        for(auto e : s2)
        {
            hash[e-'a']--;
            if(hash[e-'a'] < 0)
            {
                return false;
            }
        }
        return true;
    }
};

http://www.kler.cn/a/377158.html

相关文章:

  • 雷池 WAF 搭配阿里云 CDN 使用教程
  • 如何从 0 到 1 ,打造全新一代分布式数据架构
  • 梳理你的思路(从OOP到架构设计)_设计模式Android + Composite模式
  • WPF+MVVM案例实战与特效(四十七)-实现一个路径绘图的自定义按钮控件
  • OVS简介
  • 【扩展卡尔曼滤波理论推导与实践】【理论】【1/3 前言】
  • YOLOv6-4.0部分代码阅读笔记-efficientrep.py
  • 【408操作系统】 使用信号量机制实现同步和互斥
  • C语言用GNU源码编译建构系统工具(GNU BUILD SYSTEM)编译创建源码包
  • TypeError: Cannot read properties of undefined (reading ‘__asyncLoader‘)
  • UE4_Niagara基础实例—13、通过纹理采样来创造粒子
  • Speaker Recognition说话人识别(声纹识别)
  • react18中redux-saga实战系统登录功能及阻塞与非阻塞的性能优化
  • 专利生成穿刺demo
  • Type-C PD诱骗取电快充协议芯片 支持PD 5V、9V、12V、15V、20V电压
  • 反常积分的敛散性判别
  • VBA在低版本Excel中创建unique函数的方法
  • Elasticsearch中的常用操作
  • Redis全系列学习基础篇之位图(bitmap)常用命令的解析
  • java8 list map 聚合求和
  • 线性代数求特征值和特征向量的技巧
  • 深基坑结构施工安全在自动化监测不知道怎么布设测点?不知道用什么设备?
  • 论分布式架构设计及其实现
  • CSRF与SSRF
  • DPDK event 驱动开发
  • 本周我都做了啥?(10.25-11.1)