leetcode1405
在这三年时间中,做了不少的算法题目,leetcode也已经做到700题了,我觉得差不多了。 虽然和算法的大牛相比还有很大的差距,但对我自己的情况来说,已经算是达到了我的上限水平了。 我不想强求自己的算法能力再进一步提高了。感谢自己这三年的坚持,让我更有信心面对工作中的问题和挑战。 我想我应该抽出时间,对做过的题目,按照类别做一些复习,争取维持现在的算法水平,新的题目就随缘吧。 下面这道题是这周的周赛的一道中等难度的题目,这种题对我来说有点偏难,作为纪念性的第700题,我还是别自己费劲去弄了,参考一下高手的答案吧,哈哈哈。 第一种方案,使用堆: 1 from heapq import heappush, heappop 2 class Solution: 3 def longestDiverseString(self, a: int, b: int, c: int) -> str: 4 max_heap = [] 5 if a != 0: 6 heappush(max_heap, (-a, 'a')) 7 if b != 0: 8 heappush(max_heap, (-b, 'b')) 9 if c != 0: 10 heappush(max_heap, (-c, 'c')) 11 s = [] 12 while max_heap: 13 first, char1 =