随笔 - 1133  文章 - 0 评论 - 19 阅读 - 20万
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

复制代码
 1 class Solution:
 2     def groupThePeople(self, groupSizes: List[int]) -> List[List[int]]:
 3         dic = {}
 4         n = len(groupSizes)
 5         for i in range(n):
 6             if groupSizes[i] not in dic:
 7                 dic[groupSizes[i]] = [i]
 8             else:
 9                 dic[groupSizes[i]].append(i)
10         res = []
11         for k,v in dic.items():
12             #k:每组几个,v集合
13             temp = []
14             for j in range(len(v)):
15                 temp.append(v[j])
16                 if len(temp) == k:
17                     res.append(temp[:])
18                     temp.clear()
19         return res
复制代码

哈希思想,在dic中记录每一种size对应的元素的集合。

然后按照size的大小进行分组,每个子集中都包含size个元素。

posted on   Sempron2800+  阅读(200)  评论(0编辑  收藏  举报
努力加载评论中...
点击右上角即可分享
微信分享提示