写一个全排列
补全 perm:把 a 里的数排成一排,用 used 记住哪些已经用过。输出一共有几种排法。
阅读更多 →
第一个和最后一个排列
生成 [1, 2, 3] 的全部排列。运行下面这段程序: def perm(a): res = [] path = [] used = [False] * len(a)
阅读更多 →
子集问题每一层在决定什么
生成全部子集时,每一层在决定【0】。
阅读更多 →
生成组合怎么才不重复
生成组合时避免重复的办法是【0】。
阅读更多 →
排列和组合差在哪
排列和组合的区别是【0】。
阅读更多 →
递归生成全排列,每一层在做什么
递归生成全排列时,每一层递归在【0】。
阅读更多 →
三个数能排出几种顺序
走不通就退回来,换一条再走 贪心 回溯 ✗ 把 [1, 2, 3] 排成一排,一共有几种排法?运行下面这段程序: def perm(a): res = [] path = []
阅读更多 →
回溯的代价是什么
走不通就退回来,换一条再走 贪心 回溯 ✗ 用回溯要付的代价是【0】。
阅读更多 →
什么问题适合用回溯
走不通就退回来,换一条再走 贪心 回溯 ✗ 一个问题适合用回溯,通常是因为【0】。
阅读更多 →
暴力搜索为什么慢
走不通就退回来,换一条再走 贪心 回溯 ✗ 暴力搜索慢,是因为【0】。
阅读更多 →