力扣 6009. 使两字符串互为字母异位词的最少步骤数
题目
给你两个字符串 s 和 t 。在一步操作中,你可以给 s 或者 t 追加 任一字符 。
返回使 s 和 t 互为 字母异位词 所需的最少步骤数。
字母异位词 指字母相同但是顺序不同(或者相同)的字符串。
示例
输入:s = “leetcode”, t = “coats”
输出:7
解释:
- 执行 2 步操作,将 “as” 追加到 s = “leetcode” 中,得到 s = “leetcodeas” 。
- 执行 5 步操作,将 “leede” 追加到 t = “coats” 中,得到 t = “coatsleede” 。
“leetcodeas” 和 “coatsleede” 互为字母异位词。
总共用去 2 + 5 = 7 步。
可以证明,无法用少于 7 步操作使这两个字符串互为字母异位词。
输入:s = “night”, t = “thing”
输出:0
解释:给出的字符串已经互为字母异位词。因此,不需要任何进一步操作。
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/minimum-number-of-steps-to-make-two-strings-anagram-ii
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
方法1
分别统计两个字符串每个字符的数量,再比较求不同的数量。
Java实现
class Solution {public int minSteps(String s, String t) {int ans = 0;int[] arr1 = new int[26];int[] arr2 = new int[26];for (char c : s.toCharArray()) {arr1[c - 'a']++;}for (char c : t.toCharArray()) {arr2[c - 'a']++;}for (int i = 0; i < 26; i++) {if (arr1[i] != arr2[i]) ans += Math.abs(arr1[i] - arr2[i]);}return ans;}
}
力扣 6009. 使两字符串互为字母异位词的最少步骤数相关推荐
- LeetCode 6009. 使两字符串互为字母异位词的最少步骤数
题目链接: 力扣https://leetcode-cn.com/contest/weekly-contest-282/problems/minimum-number-of-steps-to-make- ...
- LeetCode 2186. 使两字符串互为字母异位词的最少步骤数
文章目录 1. 题目 2. 解题 1. 题目 给你两个字符串 s 和 t .在一步操作中,你可以给 s 或者 t 追加 任一字符 . 返回使 s 和 t 互为 字母异位词 所需的最少步骤数. 字母异位 ...
- LeetCode 1347. 制造字母异位词的最小步骤数
1. 题目 给你两个长度相等的字符串 s 和 t.每一个步骤中,你可以选择将 t 中的 任一字符 替换为 另一个字符. 返回使 t 成为 s 的字母异位词的最小步骤数. 字母异位词 指字母相同,但排列 ...
- LeetCode刷题(107)~制造字母异位词的最小步骤数【巧妙】
题目描述 给你两个长度相等的字符串 s 和 t.每一个步骤中,你可以选择将 t 中的 任一字符 替换为 另一个字符. 返回使 t 成为 s 的字母异位词的最小步骤数. 字母异位词 指字母相同,但排列不 ...
- 力扣最热100题之找异位词
题目:给定两个字符串 s 和 p,找到 s 中所有 p 的 异位词 的子串,返回这些子串的起始索引.不考虑答案输出的顺序. 分析:要解决该问题,首先应该明白,什么叫异位词?就是由相同的字母组成的不同顺 ...
- 1.字母异位词分组(LeetCode第49题)
一.题目描述 给定一个字符串数组,将字母异位词组合在一起.字母异位词指字母相同,但排列不同的字符串. 示例: 输入: ["eat", "tea", " ...
- LeetCode(力扣)初级算法 字符串篇
目录 1.反转字符串 2.整数反转 2.1第一版代码 2.2第二版代码 3.字符串中的第一个唯一字符 3.1第一版代码 3.2第二版代码 3.3第三版代码 4.有效的字母异位词 4.1第一版代码 4. ...
- 力扣242.有效的字母异位词(Java语言,排序法、散列表法)
题目描述: 给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词. 注意:若 s 和 t 中每个字符出现的次数都相同,则称 s 和 t 互为字母异位词. 解题思路: 思路1: ...
- 242. 有效的字母异位词 349. 两个数组的交集
给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词. 注意: 若 s 和 t 中每个字符出现的次数都相同,则称 s 和 t 互为字母异位词. 示例 1: 输入: s = & ...
最新文章
- iOS编码:如何创建gbk编码
- 如何开始企业网站的需求分析?
- python基础第六天
- nodejs下载安装教程(XP版)
- java8新特性-lambda表达式和stream API的简单使用
- python参数传递_python中的*和**参数传递机制
- 怎么改服务器php文件,自定义更改服务器asp/php/.net等文件后缀名
- 第6讲 | 理解区块链之前,先上手体验一把数字货币
- H.264 Profile、Level、Encoder三张简图
- 使用SpringData出现java.lang.AbstractMethodError
- java finally在return_Java finally语句到底是在return之前还是之后执行?
- SpringBoot 使用 Caffeine 本地缓存
- Nginx + uWSGI + flask + socketio 部署解决方案
- python-gui-pyqt5的使用方法-7--partial 传递参数的方法:
- OPIE(火狐扩展)-导入导出firefox扩展的所有设置
- fastp manul page
- 计算机检索高考投档线,投档分数线是什么意思 低于投档线会被录取吗
- 【改写历史】--历史谁书写?谁将改写历史?
- 机器学习----矩估计方法
- 电力电子技术的matlab实践 pdf,MATLAB 在电力电子技术中的应用.pdf