Web pages that exploit JavaScript to explain and calculate permutations and combinations.

Some of the toughest math problems involve simple questions like “how many?” The simplest examples of these involves rearrangements of the elements of small (or large) sets. When order matters, these rearrangements are called permutations; when it doesn't they are combinations.

You can visit the pages in order, by following the links at the tops and bottoms of the pages. But you can also visit them in arbitrary order. In the section below, there are links for each page, so you can jump to them directly.

- Permutations — Lists all (ordered) rearrangements for N letters.
- Combinations — Lists (unordered) subsets of N letters.

These two pages merely scratch the surface. I look forward to creating more pages that use the power of HTML5 and JavaScript to provide interactive demonstrations of cool things. Stay tuned!

- ana-grabr — Interactive helper for finding anagrams for real words.
- gear-grafr — Tool for plotting gear ratios for bicycles.

- Anagrammer — An application of permutations to real words.
- LL(1) Parsing — A Web tool for generating a parse table and using it to construct a leftmost derivation.
- The Chaos Pages — A series of pages exploring iterated systems.
- The Golden Ratio Pages — A similar series of pages exploring the famous ratio.
- Gear Ratios — These may not be golden, but they are important for people who ride and work with bicycles.
- Gaussian Elimination — A Web tool for reducing matrices to row echelon form.
- Combinatorial Music Theory — A lecture connecting graph theory with musical scales and chords.
- The 3D Pages — My JavaScript and Dart implementation of interactive 3D graphics .
- The DSP Pages — Explaining the Fourier transform in the discrete domains.
- Graph Clock — A good example of using JavaScript to make a self-modifying Web page, and a little puzzle about elementary connected graphs.
- Regular Expressions — Sometimes a non-match can hang the system.
- The Z-Board — A new kind of MIDI controller.

Previous ☜ Navigate through the Combinatorics pages ☞ Next