358. Rearrange String k Distance Apart.py 文件源码

python
阅读 21 收藏 0 点赞 0 评论 0

项目:py-leetcode 作者: coolmich 项目源码 文件源码
def rearrangeString(self, str, k):
        """
        :type str: str
        :type k: int
        :rtype: str
        """
        mapi = Counter(list(str))
        h = [(-mapi[key], key) for key in mapi]
        heapq.heapify(h)
        q, res = deque(), []
        while h:
            cnt, letter = heapq.heappop(h)
            if not cnt: break
            res.append(letter)
            q.append((cnt + 1, letter))
            if len(q) >= k:
                heapq.heappush(h, q.popleft())
        return ''.join(res) if len(res) == len(str) else ''
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号