# 排列 / 组合 / 子集生成器（支持重复元素）

生成多重集的排列、组合与子集，自动去重并按字典序输出：排列用 next_permutation，精确计数 n!/Π(mᵢ!)；组合生成不同的 k-子多重集，计数为 Π(1+x+…+x^mᵢ) 中 x^k 的系数（元素互异时即 C(n,k)）；子集枚举所有子多重集，计数 Π(mᵢ+1)（互异时 2ⁿ），含空集。最多 12 个元素，展示上限 200 条但计数始终精确；组合模式要求 1 ≤ k ≤ n。经典例：[A, A, B] 的排列 → 3!/2! = 3 个（AAB、ABA、BAA）；[A, A, B] 的子集 → (2+1)(1+1) = 6 个。

> 标准页面: https://elysiatools.com/zh/tools/combinatorial-generation

- **分类:** Math & Numbers

- **关键词:** 排列, 组合, 子集, 幂集, 多重集, 重复元素, 组合数学, 下一个排列, 阶乘, 离散数学

## 概述

排列 / 组合 / 子集生成器是一款专为多重集计算设计的数学工具，支持 1 至 12 个元素的输入并自动处理重复项。工具利用字典序与 next_permutation 算法生成去重后的全排列、指定大小 k 的组合以及完整子集（幂集），在精确计算理论总数（如多项式系数与阶乘去重公式）的同时，清晰列出最多 200 条具体生成结果。

## 输入项

- **生成模式** (select)
- **元素（可重复）** (text): 1–12 items separated by commas or spaces; duplicates like 'A, A, B' are supported and only distinct results are generated.
- **大小 k（仅组合模式）** (number): How many items each combination holds; ignored in the permutations and subsets modes.
- **小数位数** (number)

## 适用场景

- 需要对包含相同字符或数字的列表（如 A, A, B）生成不重复的全排列时
- 需要从多重集中挑选 k 个元素并列举所有唯一组合（k-子多重集）时
- 需要穷举集合的所有可能子集（包含空集）并验证离散数学计数公式时

## 工作原理

- 在输入框中填入以逗号或空格分隔的元素（支持 1 到 12 个元素，允许重复）。
- 选择生成模式（排列、选 k 个的组合或子集）；若选择组合模式，需设置大小 k（1 ≤ k ≤ n）。
- 系统自动解析多重集频数，计算精确的理论总数，并按字典序输出前 200 条去重后的序列。

## 使用案例

- 离散数学与概率论教学中验证多重集排列组合公式与生成母函数系数
- 算法与编程题（如 LeetCode 全排列 II、子集 II）的测试用例构造与结果核对
- 游戏规则设计或抽奖组合枚举中对有限重复道具搭配方案的完整穷举

## 常见问题

### 输入重复元素（如 A, A, B）时，输出会自动去重吗？

会。工具内置多重集处理机制，全排列、组合与子集均会自动去重，仅输出唯一的字典序结果。

### 生成结果的数量有上限吗？

文本列表最多展示前 200 条生成结果，但理论计数统计始终保持完全精确。

### 最多支持输入多少个元素？

支持输入 1 到 12 个元素，元素之间可用逗号或空格分隔。

### 组合模式中的参数 k 有什么限制？

参数 k 必须为整数，且取值范围必须满足 1 ≤ k ≤ n（n 为输入的总元素个数）。

### 子集模式是否包含空集？

包含。子集模式会列出包含空集 (empty) 在内的所有子多重集，计数公式为每个元素出现次数加一的连乘积。

## 相关工具

- [三相短路电流估算计算器（IEC 60909）](https://elysiatools.com/zh/tools/short-circuit-current-calculator): 按 IEC 60909 远端短路法估算三相对称短路电流：I"_k = c·U_n/(√3·|Z|)，i_p = κ·√2·I"_k。阻抗由变压器与线路串联累加；峰值系数 κ = 1.02 + 0.98·e^(−3R/X)。
- [零和博弈求解器（鞍点 / 线性规划混合策略）](https://elysiatools.com/zh/tools/game-theory-zero-sum): 求解 2–6 × 2–6 双人零和博弈（支付矩阵归行方——最大化者，列方支付）：先做鞍点检验（行最小值的最大值 = 列最大值的最小值时存在纯策略均衡，列出所有鞍点格）；否则移位矩阵使元素 ≥ 1 后用单阶段单纯形（松弛基、Bland 规则）求解 max Σz s.t. Bz ≤ 1，其原始解给出列方混合策略 q，对偶影子价格恰为行方 LP 解 y，值移回后给出 x、q、v，并数值验证双方安全策略（xᵀA ≥ v、Aq ≤ v）与极小极大相等。经典例：猜硬币 \[\[1,-1\],\[-1,1\]\] → 值 0，双方各以 0.5/0.5 混合。
- [拉普拉斯逆变换计算器（部分分式法）](https://elysiatools.com/zh/tools/inverse-laplace-calculator): 对有理函数 F(s) = N(s)/D(s)（真分式，分母次数 ≤ 6）求拉普拉斯逆变换：先对分母求根并按重数/共轭对分组，再解多项式系数线性方程组得到部分分式分解，最后逐项查表反变换（A/(s−r)→Ae^(rt)、A/(s−r)^j→At^(j−1)e^(rt)/(j−1)!、(Bs+C)/((s−α)²+β²)→e^(αt)\[Bcos(βt)+…sin(βt)\]）。经典例：1/(s²+3s+2) → e^(−t)−e^(−2t)；(3s+5)/(s²+4) → 3cos(2t)+2.5sin(2t)。
- [拉普拉斯变换计算器（常用函数对查表）](https://elysiatools.com/zh/tools/laplace-transform-calculator): 查表求常用函数的拉普拉斯变换 F(s) = ∫₀^∞ e^(−st)f(t)dt：覆盖 14 组标准变换对（1、t、tⁿ、e^(at)、tⁿe^(at)、sin/cos(kt) 及其指数移位、sinh/cosh、t·sin/t·cos、δ(t)），带参数代入、收敛域（如 s > a）、推导要点，并可在指定 s 处数值求值（自动校验收敛）。示例：L{e^t} = 1/(s−1)，s>1，F(2) = 1。
- [部分分式分解计算器（有理函数）](https://elysiatools.com/zh/tools/partial-fraction-decomposer): 对有理函数 F(x) = N(x)/D(x) 做部分分式分解（分母次数 ≤ 6，分子次数 ≤ 8，假分式自动先做多项式长除）：Durand-Kerner 求分母根并按重数/共轭对分组，解多项式系数线性方程组得到 A/(x−r)^j 与 (Bx+C)/((x−α)²+β²) 形式的分解，并在代数探针点做数值残差验证。经典例：(3x+5)/(x²+3x+2) = 2/(x+1) + 1/(x+2)；(x³+2x)/(x²+1) = x + x/(x²+1)；1/(x(x+1)²) = 1/x − 1/(x+1) − 1/(x+1)²。
- [PERT 网络分析器（期望工期/方差/完工概率）](https://elysiatools.com/zh/tools/pert-network-analyzer): 对 2–20 个活动做 PERT 三点估计分析（每行：名称、乐观 a、最可能 m、悲观 b、紧前活动）：te = (a+4m+b)/6，σ² = ((b−a)/6)²；在 te 上运行 CPM 得关键路径、期望项目工期 TE 与项目方差（关键路径上 σ² 之和）；给出目标工期 T 时按正态近似计算 Z = (T−TE)/σ 与完工概率 Φ(Z)。a≤m≤b 违规、循环依赖按业务拒绝；σ≈0 的确定性网络按确定性处理。经典例：A(2,4,6)、B(3,5,7)、C(2,3,10)、D(4,6,8, B C) → TE = 15，σ² = 1.3333，T = 16 时概率 ≈ 80.7%。
- [M/M/c 多服务台排队计算器](https://elysiatools.com/zh/tools/queuing-theory-mmc): 计算 M/M/c 多服务台排队系统的稳态指标（泊松到达率 λ、c 个相同指数服务台、各台服务率 μ、共享 FCFS 队列）：给出通达量 a = λ/μ、每台利用率 ρ、系统空闲概率 P0、Erlang-C 等待概率 Pw、队列平均人数 Lq、系统平均人数 L、平均逗留时间 W 与等待时间 Wq，并用 Little 公式与 Pw→Lq 关系交叉验证。要求 λ < cμ，否则按业务拒绝（不稳定）；c = 1 时公式退化为 M/M/1。经典例：λ = 6/小时、μ = 3/小时、c = 3 → P0 = 0.1111、Pw = 0.4444、Lq = 0.8889、L = 2.8889。
- [二阶常系数线性微分方程求解器（特征方程法）](https://elysiatools.com/zh/tools/second-order-ode-solver): 求解 a·y'' + b·y' + c·y = f(x)：解特征方程 ar² + br + c = 0，按判别式给出齐次解（两相异实根 / 二重根 / 共轭复根），用待定系数法求特解（含共振：k 为特征根时试探解乘 x^m），支持常数、多项式、A·e^(kx) 与 A·sin(kx)+B·cos(kx) 右端项；给定 y(x₀) 与 y'(x₀) 时由 2×2 线性方程组定出 C1、C2。经典例：y''−3y'+2y=0，y(0)=1，y'(0)=0 → y = −e^(2x)+2e^x。

## 示例

- [无版权FLAC音频样本](https://elysiatools.com/zh/samples/flac-samples): 用于测试与开发的 FLAC 无损音频样本集合，包含自然声音与冥想音乐
- [无版权WAV音频样本](https://elysiatools.com/zh/samples/wav-samples): 用于测试与开发的未压缩 WAV 音频样本集合，包含自然声音与冥想音乐
- [Web Python 图像处理示例](https://elysiatools.com/zh/samples/web-image-processing-python): Web Python 图像处理示例，使用 PIL/Pillow 包括读取、保存、缩放和格式转换
- [Android Java 图像处理示例](https://elysiatools.com/zh/samples/android-image-processing-java): Android Java 图像处理示例，包括图像读取保存、缩放和格式转换

## 相关内容

- [音频编码与格式转换工具](https://elysiatools.com/zh/hubs/audio-convert): 在一个专题里比较音频格式转换、码率调整、采样率转换、编码切换和导出工具，适合交付与归档工作流。
- [图片格式转换与动画导出工具](https://elysiatools.com/zh/hubs/image-convert): 在一个专题里比较 JPG、PNG、GIF、AVIF、WebP、TIFF、ICO、base64 以及动画导出相关的图片格式转换工具。
- [JSON 交换与格式翻译工具](https://elysiatools.com/zh/hubs/json-convert): 在一个专题里比较 JSON 与 CSV、YAML、TOML、GraphQL、XML、Markdown、Excel、BSON、EDN 等结构化格式之间的转换工具。
- [面向网页与印刷的色彩空间转换工具](https://elysiatools.com/zh/hubs/design-convert): 围绕网页到印刷的色彩空间转换整理的一组工具。
