《零基础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

}

相关推荐
Athenaand10 小时前
代码随想录算法训练营第62天 | Floyd 算法精讲、A * 算法精讲 (A star算法)、最短路算法总结篇、图论总结
算法·图论
qq_4335545410 小时前
C++ Dijkstra堆优化算法
开发语言·c++·算法
大模型教程10 小时前
本地AI知识库问答开源技术实现(三)--配置模型和知识库
程序员·llm·agent
AI大模型10 小时前
复盘我的第一个 大模型Agent:从核心循环到模块化架构的演进之路
程序员·llm·agent
楼田莉子11 小时前
C++动态规划算法:斐波那契数列模型
c++·学习·算法·动态规划
1373i12 小时前
【Python】通俗理解反向传播
深度学习·算法·机器学习
Madison-No712 小时前
【C++】日期类运算符重载实战
c++·算法
cici1587412 小时前
基于K-SVD的稀疏编码去噪算法
算法
电力程序小学童12 小时前
基于密集型复杂城市场景下求解无人机三维路径规划的Q-learning算法研究(matlab)
算法·matlab·无人机
小柯J桑_12 小时前
Linux:线程控制
linux·c++·算法