Wenn man Basilos Vorgehen etwas weiter treibt (siehe auch die englische Wikipedia zum Stern-Brocot-Baum),
sieht man, dass sich die Anzahl der Links- und Rechtsdrehungen fast ergibt,
wenn man nur jeweils (einmal mit dem ersten, das andere Mal mit dem zweiten beginnend)
jeden zweiten Koeffizienten des Kettenbruchs (engl. continued fraction) behält und die Summen bildet.
Genaueres entnehme man folgendem kurzen Julia-Programm:
Dabei ist contfrac( r).q der Vektor der der Koeffizienten der (regulären) Kettenbruchdarstellung der rationalen Zahl r, der nicht auf 1 endet.
Fun-Fact am Rande: In jeder Tiefe des Baumes ist das Maximum der Zähler bzw. Nenner eine Fibonacci-Zahl.
sieht man, dass sich die Anzahl der Links- und Rechtsdrehungen fast ergibt,
wenn man nur jeweils (einmal mit dem ersten, das andere Mal mit dem zweiten beginnend)
jeden zweiten Koeffizienten des Kettenbruchs (engl. continued fraction) behält und die Summen bildet.
Genaueres entnehme man folgendem kurzen Julia-Programm:
Code:
using RealContinuedFractions
function lr(r::Rational)
v = contfrac(r).q
[sum(v[2:2:end]) - 1, sum(v[1:2:end])]
end
sum([22//7 87//32].|>lr)
# --> [11, 8]
Fun-Fact am Rande: In jeder Tiefe des Baumes ist das Maximum der Zähler bzw. Nenner eine Fibonacci-Zahl.