liveBook · Manning

Mobile number

As explained in Fabulous Adventures in Data Structures and Algorithms

A mobile number is an element of a directed permutation having a smaller adjacent element in its assigned direction.

A mobile number is an element of a directed permutation with a smaller neighboring element in its assigned direction. Zero is never mobile. section 6.2.5

Even’s change-ringing algorithm uses mobile numbers to generate permutations:

Reading mobility

In ←0 ←1 ←2 ←3, numbers 1, 2, and 3 are mobile. In ←1 2→ ←3 ←0, only 3 is mobile because it alone has a smaller neighbor in its direction. section 6.2.5

How Fabulous Adventures in Data Structures and Algorithms covers it

How deep it goes
Defines mobility, works through directed examples, and embeds the test in a permutation algorithm.
Examples
Uses arrow-marked permutations and enumerates the first permutations of four numbers.
What it assumes
Assumes familiarity with permutations and arrays while defining directed mobility from concrete examples.
What you can do after
Build it from scratch by testing mobility, selecting the largest mobile value, swapping it, and reversing larger values’ directions.
How it connects
Connects mobile numbers with permutations, directions, adjacent elements, swaps, and termination.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Fabulous Adventures in Data Structures and Algorithms. The section links point to the parts of the book it draws on.