前言:
如今大家对“c语言 判断字符相等”都比较珍视,朋友们都需要学习一些“c语言 判断字符相等”的相关资讯。那么小编也在网上搜集了一些关于“c语言 判断字符相等””的相关资讯,希望朋友们能喜欢,朋友们一起来了解一下吧!题目
给你一个字符串 s ,如果 s 是一个 好 字符串,请你返回 true ,否则请返回 false 。
如果 s 中出现过的 所有 字符的出现次数 相同 ,那么我们称字符串 s 是 好 字符串。
示例 1:输入:s = "abacbc" 输出:true
解释:s 中出现过的字符为 'a','b' 和 'c' 。s 中所有字符均出现 2 次。
示例 2:输入:s = "aaabb" 输出:false
解释:s 中出现过的字符为 'a' 和 'b' 。
'a' 出现了 3 次,'b' 出现了 2 次,两者出现次数不同。
提示:1 <= s.length <= 1000
s 只包含小写英文字母。
解题思路分析
1、遍历;时间复杂度O(n),空间复杂度O(1)
func areOccurrencesEqual(s string) bool { m := make(map[byte]int) for i := 0; i < len(s); i++ { m[s[i]]++ } count := 0 for _, v := range m { if count == 0 { count = v } else { if count != v { return false } } } return true}
2、遍历;时间复杂度O(n),空间复杂度O(1)
func areOccurrencesEqual(s string) bool { m := make(map[byte]int) for i := 0; i < len(s); i++ { m[s[i]]++ } count := len(s) / len(m) for _, v := range m { if v != count { return false } } return true}总结
Easy题目,借助map统计遍历即可
版权声明:
本站文章均来自互联网搜集,如有侵犯您的权益,请联系我们删除,谢谢。
标签: #c语言 判断字符相等