piapia123
en

String Permutations and Combinations

Text

Everything runs locally in your browser — nothing is uploaded

Input
Drop a file here to load its contents
Output

Four kinds of enumeration in one tool: all permutations, combinations of k, left and right rotation, and the cartesian product. The important part is that the exact count is computed before anything is generated: `abcdefghij` has 3,628,800 permutations, and generating first would freeze the page before you could react. So it refuses and tells you how many results the input needs. Duplicate characters are removed: `aab` yields 3 permutations (`aab`, `aba`, `baa`), not 6. In cartesian mode each comma-separated segment contributes its characters (`ab,12` gives `a1 a2 b1 b2`). Everything runs in your browser; nothing is uploaded.

Features

  • Five modes: permutations, combinations of k, left and right rotation, cartesian product
  • ⚠️ Exact count first, then generate — over the limit it errors, never truncates silently
  • Duplicate characters removed: aab yields 3 permutations, not 6
  • Combinations counted exactly via generating-function coefficients
  • Choose generation order or sorted output
  • Reports the result count and the current limit
  • Code-point based, so emoji are never split

How to use

  1. Enter one line of text
  2. Pick a mode; for combinations set k
  3. Adjust deduplication, order and the limit as needed
  4. The result list and count appear immediately

FAQ

Why an error instead of the first 1000 results?
Silent truncation makes it look like “that is all there is”. Permutation counts grow factorially, and the missing results are often the ones you were looking for, so it says how many are needed instead.
How are duplicate characters handled?
Generation walks a per-character count rather than swapping positions, so two identical letters are never treated as two results. That is why `aab` gives 3.
How do I enter a cartesian product?
Separate the groups with commas; each group contributes its characters. `ab,12` gives a1, a2, b1, b2.
Is anything uploaded?
No. It is all computed in memory in your browser, no request is made, and it works offline.

Related tools