美文网首页
LeetCode题解之生成每种字符都是奇数个的字符串

LeetCode题解之生成每种字符都是奇数个的字符串

作者: l1fe1 | 来源:发表于2020-09-06 09:07 被阅读0次

    生成每种字符都是奇数个的字符串

    题目描述

    给你一个整数 n,请你返回一个含 n 个字符的字符串,其中每种字符在该字符串中都恰好出现 奇数次

    返回的字符串必须只含小写英文字母。如果存在多个满足题目要求的字符串,则返回其中任意一个即可。

    示例 1:

    输入:n = 4
    输出:"pppz"
    解释:"pppz" 是一个满足题目要求的字符串,因为 'p' 出现 3 次,且 'z' 出现 1 次。当然,还有很多其他字符串也满足题目要求,比如:"ohhh" 和 "love"。
    

    示例 2:

    输入:n = 2
    输出:"xy"
    解释:"xy" 是一个满足题目要求的字符串,因为 'x' 和 'y' 各出现 1 次。当然,还有很多其他字符串也满足题目要求,比如:"ag" 和 "ur"。
    

    示例 3:

    输入:n = 7
    输出:"holasss"
    

    提示:

    • 1 <= n <= 500

    解题思路

    如果 n 为奇数,则直接返回只有一种字符(比如 'a')的字符串即可,否则,返回 n - 1 个一种字符(比如 'a')和另一种字符(比如 'b')即可,可以利用 String 类的 repeat 方法来重复某一个字符串。

    复杂度分析

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

    代码实现

    class Solution {
        public String generateTheString(int n) {
            return "a".repeat(n - 1) + (n % 2 == 1 ? "a" : "b");
        }
    }
    

    相关文章

      网友评论

          本文标题:LeetCode题解之生成每种字符都是奇数个的字符串

          本文链接:https://www.haomeiwen.com/subject/vnvxektx.html