Skip to content

Latest commit

 

History

History
75 lines (52 loc) · 1.68 KB

[0358] K 距离间隔重排字符串.md

File metadata and controls

75 lines (52 loc) · 1.68 KB
title tags categories author comments updated permalink mathjax top description date
[0358] K 距离间隔重排字符串
leetcode
leetcode
张学志
true
false
false
false
...
2019-12-31 16:05:58 -0800

题目描述

给你一个非空的字符串 s 和一个整数 k,你要将这个字符串中的字母进行重新排列,使得重排后的字符串中相同字母的位置间隔距离至少为 k

所有输入的字符串都由小写字母组成,如果找不到距离至少为 k 的重排结果,请返回一个空字符串 ""

示例 1:

输入: s = "aabbcc", k = 3
输出: "abcabc" 
解释: 相同的字母在新的字符串中间隔至少 3 个单位距离。

示例 2:

输入: s = "aaabc", k = 3
输出: "" 
解释: 没有办法找到可能的重排结果。

示例 3:

输入: s = "aaadbbcc", k = 2
输出: "abacabcd"
解释: 相同的字母在新的字符串中间隔至少 2 个单位距离。
Related Topics
  • 贪心算法
  • 哈希表
  • 题目代码

    class Solution {
    public:
        string rearrangeString(string s, int k) {
    
        }
    };

    题目解析

    方法一

    方法二

    方法三