The nodes of the Calkin-Wilf tree, when read in level order so that the elements in each level are read from left to right, produce the linear sequence of all possible positive rational numbers. Almost as if by magic, this construction guarantees every positive integer fraction to appear exactly once in this sequence. Even more wonderfully, this construction makes every rational number to appear in its lowest reduced form! To perform the following calculations, you should import the data types Fraction and deque from the fractions and collections modules. Your function should return the n:th element of this sequence. First, create a new instance of deque and append the first fraction 1/1 to prime the pump, so to speak, to initiate the production of the values of this sequence. Repeat the following procedure n times; pop the fraction currently in front of the queue using the deque method popleft, extract its numerator and denominator p and q. and push the two new fractions p/ (p+q) and (p+q)/q to the back of the queue, in this order. Return the fraction object that was popped in the final round.

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question
100%
def calkin_wilf(n)
The nodes of the Calkin-Wilf tree, when read in level order so that the elements in each level are
read from left to right, produce the linear sequence of all possible positive rational numbers.
Almost as if by magic, this construction guarantees every positive integer fraction to appear exactly
once in this sequence. Even more wonderfully, this construction makes every rational number to
appear in its lowest reduced form! To perform the following calculations, you should import the
data types Fraction and deque from the fractions and collections modules.
Your function should return the n:th element of this sequence. First, create a new instance of deque
and append the first fraction 1/1 to prime the pump, so to speak, to initiate the production of the
values of this sequence. Repeat the following procedure n times; pop the fraction currently in front
of the queue using the deque method popleft, extract its numerator and denominator p and q.
and push the two new fractions p/ (p+g) and (p+g) /g to the back of the queue, in this order.
Return the fraction object that was popped in the final round.
Expected result
10
3/5
10000
11/39
100000
127/713
Transcribed Image Text:def calkin_wilf(n) The nodes of the Calkin-Wilf tree, when read in level order so that the elements in each level are read from left to right, produce the linear sequence of all possible positive rational numbers. Almost as if by magic, this construction guarantees every positive integer fraction to appear exactly once in this sequence. Even more wonderfully, this construction makes every rational number to appear in its lowest reduced form! To perform the following calculations, you should import the data types Fraction and deque from the fractions and collections modules. Your function should return the n:th element of this sequence. First, create a new instance of deque and append the first fraction 1/1 to prime the pump, so to speak, to initiate the production of the values of this sequence. Repeat the following procedure n times; pop the fraction currently in front of the queue using the deque method popleft, extract its numerator and denominator p and q. and push the two new fractions p/ (p+g) and (p+g) /g to the back of the queue, in this order. Return the fraction object that was popped in the final round. Expected result 10 3/5 10000 11/39 100000 127/713
Expert Solution
steps

Step by step

Solved in 4 steps with 2 images

Blurred answer
Knowledge Booster
Types of trees
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education