leetcode题解:389.找不同

简介: leetcode题解:389.找不同

389. 找不同

给定你两个字符串 st ,它们只包含小写字母。

字符串 t 由字符串 s 随机重排,然后在随机位置添加一个字母。

请找出在 t 中被添加的字母。

示例 1:

输入:s = "abcd", t = "abcde"
输出:"e"
解释:'e' 是那个被添加的字母。

示例 2:

输入:s = "", t = "y"
输出:"y"

提示:

  • 0 <= s.length <= 1000
  • t.length == s.length + 1
  • st 只包含小写字母

思路

1.由于只添加一个字母,那么s和t其余的字母都相同,相同字母的ascii值的和也相同

2.由于确定了在t中添加字母,使用ascii值的差,可以找出被添加的字母

将字符串 s 中每个字符的 ASCII 码的值求和,得到 As

对字符串 t 同样的方法得到 At

两者的差值 At−As即代表了被添加的字符。

复杂度分析

  • 时间复杂度:O(N)O(N)O(N)。
  • 空间复杂度:O(1)O(1)O(1)。

题解

class Solution {
public:
    char findTheDifference(string s, string t) {
        int as = 0, at = 0;
        for (char ch : s) {
            as += ch;
        }
        for (char ch : t) {
            at += ch;
        }
        return at-as;
    }
};

推荐学习 https://xxetb.xetslk.com/s/p5Ibb

目录
相关文章
|
JavaScript 前端开发 Windows
jQuery的ztree仿windows文件新建和拖拽效果
jQuery的ztree仿windows文件新建和拖拽效果
97 0
|
存储 分布式计算 Hadoop
HDFS教程(01)- 初识HDFS
HDFS教程(01)- 初识HDFS
795 0
|
Linux 消息中间件 存储
Linux进程间通信模式
【1月更文挑战第13天】
|
Python
pip3 安装和卸载Django
pip3 安装和卸载Django
377 0
pip3 安装和卸载Django
error LNK2019: 无法解析的外部符号 _WinMain@16,该符号在函数 ___tmainCRTStartup 中被引用
error LNK2019: 无法解析的外部符号 _WinMain@16,该符号在函数 ___tmainCRTStartup 中被引用
187 0
error LNK2019: 无法解析的外部符号 _WinMain@16,该符号在函数 ___tmainCRTStartup 中被引用
|
人工智能 算法
字符串相似度算法 递归与动态规划求解分析
1.概念   编辑距离,指的是两个字符串之间,由一个转换成另一个所需的最少编辑操作次数。许可的编辑操作包括:(1)将一个字符替换成另一个字符,(2)插入一个字符,(3)删除一个字符。   相似度,等于“编辑距离+1”的倒数。
1055 0
|
10天前
|
存储 关系型数据库 分布式数据库
PostgreSQL 18 发布,快来 PolarDB 尝鲜!
PostgreSQL 18 发布,PolarDB for PostgreSQL 全面兼容。新版本支持异步I/O、UUIDv7、虚拟生成列、逻辑复制增强及OAuth认证,显著提升性能与安全。PolarDB-PG 18 支持存算分离架构,融合海量弹性存储与极致计算性能,搭配丰富插件生态,为企业提供高效、稳定、灵活的云数据库解决方案,助力企业数字化转型如虎添翼!