Man finner en løsning lettere ved å løse en mer generell oppgave: Hvordan flytte et tårn med h (h=høyde) skiver fra en start-pinne (f=fra) til pinnen (t=til). er den gjenværende tredje pinnen hvor t≠f. Oppgaven er symmetrisk for permutasjoner av pinnenes navn (symmetrisk gruppe S). Hvis en løsning er kjent for å forflytte tårnet fra til , kan samme løsning benyttes fra enhver annen start-pinne og mål-pinne. Hvis det bare er én skive (eller ingen skiver), er oppgaven triviell. Hvis n=1, flyttes disken fra til . Hvis h>1, må den største skiven flyttes fra til en annen pinne, og helst til , et eller annet sted i sekvensen av forflytninger. Den eneste situasjonen som tillater denne forflytningen er når alle mindre h-1 skiver er på pinne . Derfor må først alle n-1 mindre skiver flyttes fra til . Flytt deretter den største skiven og til slutt n-1 mindre skiver fra til . Tilstedeværelsen av den største skiven tvinger ikke frem noen forflytning av de n-1 mindre skivene og kan midlertidig ignoreres. Oppgaven er nå blitt redusert til å forflytte n-1 skiver, først fra til og deretter fra til . Den samme strategien kan brukes for å redusere h-1 til h-2, h-3, og så videre inntil h=1. Dette kalles rekursjon. Algoritmen identifiserer skivene etter stigende størrelse ved å nummerere dem med naturlige tall fra 0 til h-1, der 0 er den minste og h-1 den største skiven.