《零基础Go语言算法实战》【题目 1-16】字符串的遍历与比较

《零基础Go语言算法实战》

【题目 1-16】字符串的遍历与比较

给出两个字符串,请编写程序以确定能否将其中一个字符串重新排列后变成另一个字符串,

并规定大小写是不同的字符,空格也作为字符考虑。保证两个字符串的长度小于或等于 5000。

【解答】

① 思路。

首先要保证字符串长度小于 5000。之后只需一次循环遍历 str1 中的字符在 str2 中是否都

存在即可。

② Go 语言实现。

func isRegroup(str1, str2 string) bool {

strLen1 := len([]rune(str1))

strLen2 := len([]rune(str2))

if strLen1 > 5000 || strLen2 > 5000 || strLen1 != strLen2 {

return false

}

for _, v := range str1 {

if strings.Count(str1, string(v)) != strings.Count(str2, string(v)) {

return false

}

}

return true

}

相关推荐
Felven1 小时前
B. Luntik and Subsequences
算法
菜鸡儿齐1 小时前
leetcode-括号生成
算法·leetcode·职场和发展
fs哆哆1 小时前
在VB.NET中,随机打乱列表顺序的算法与方法
算法·.net
pen-ai2 小时前
【Yolo系列】Yolov3 目标检测算法原理详解
算法·yolo·目标检测
田里的水稻2 小时前
EP_基于UWB和单线激光雷达的托盘转送
人工智能·算法·数学建模·机器人·自动驾驶
List<String> error_P2 小时前
DFS(深度优先搜索)
数据结构·算法·dfs
今儿敲了吗2 小时前
27| 魔法封印
数据结构·c++·笔记·学习·算法
小岛前端2 小时前
前端真神器!RD280U 让我写码效率暴涨!
前端·程序员
honortech2 小时前
算法题中的 mid 中点问题
算法
今儿敲了吗2 小时前
30| 木材加工
数据结构·c++·笔记·学习·算法