How do you solve this in Python?  def riffle(items, out=True): Given    a    list    of    items    whose    length    is    guaranteed    to    be    even    (note    that    “oddly”    enough,    zero    is    an     even     number),     create     and     return     a    list     produced     by     performing     a     perfect     riffle     to     the    items     by     interleaving    the    items    of    the    two    halves    of    the    list    in    an    alternating    fashion. When    performing    a    perfect    riffle    shuffle,    also    known    as    the    Faro    shuffle,    the    list    of    items    is    split    in     two    equal    sized    halves,    either    conceptually    or    in    actuality.    The    first     two    elements    of     the    result    are     then    the    first    elements    of    those    halves.    The    next    two    elements    of    the    result    are    the    second    elements     of    those    halves,    followed    by    the    third    elements    of    those    halves,    and    so    on    up    to    the    last    elements    of     those    halves.    The    parameter    out    determines    whether    this    function    performs    an    out    shuffle    or    an    in     shuffle    that    determines    which    half    of    the    deck    the    a

Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN:9780133594140
Author:James Kurose, Keith Ross
Publisher:James Kurose, Keith Ross
Chapter1: Computer Networks And The Internet
Section: Chapter Questions
Problem R1RQ: What is the difference between a host and an end system? List several different types of end...
icon
Related questions
Question

How do you solve this in Python? 

def riffle(items, out=True):
Given    a    list    of    items    whose    length    is    guaranteed    to    be    even    (note    that    “oddly”    enough,    zero    is    an    
even     number),     create     and     return     a    list     produced     by     performing     a     perfect     riffle     to     the    items     by    
interleaving    the    items    of    the    two    halves    of    the    list    in    an    alternating    fashion.


When    performing    a    perfect    riffle    shuffle,    also    known    as    the    Faro    shuffle,    the    list    of    items    is    split    in    
two    equal    sized    halves,    either    conceptually    or    in    actuality.    The    first     two    elements    of     the    result    are    
then    the    first    elements    of    those    halves.    The    next    two    elements    of    the    result    are    the    second    elements    
of    those    halves,    followed    by    the    third    elements    of    those    halves,    and    so    on    up    to    the    last    elements    of    
those    halves.    The    parameter    out    determines    whether    this    function    performs    an    out    shuffle    or    an    in    
shuffle    that    determines    which    half    of    the    deck    the    alternating    card    is    first    taken    from.

 

Riffle shuffle kerfuffle
def riffle(items, out=True):
Given a list of items whose length is guaranteed to be even (note that "oddly" enough, zero is an
even number), create and return a list produced by performing a perfect riffle to the items by
interleaving the items of the two halves of the list in an alternating fashion.
When performing a perfect riffle shuffle, also known as the Faro shuffle, the list of items is split in
two equal sized halves, either conceptually or in actuality. The first two elements of the result are
then the first elements of those halves. The next two elements of the result are the second elements
of those halves, followed by the third elements of those halves, and so on up to the last elements of
those halves. The parameter out determines whether this function performs an out shuffle or an in
uffle that determines which half of the deck the alternating card is first taken from.
items
out
Expected result
[1, 2, 3, 4, 5, 6, 7, 8]
True
[1, 5, 2, б, 3, 7, 4, 8]
[1, 2, 3, 4, 5, 6, 7, 8]
False
[5, 1, 6, 2, 7, 3, 8, 4]
[ ]
True
[]
['bob', 'jack']
True
['bob',
'jack']
['bob', 'jack']
False
['jack', 'bob']
Transcribed Image Text:Riffle shuffle kerfuffle def riffle(items, out=True): Given a list of items whose length is guaranteed to be even (note that "oddly" enough, zero is an even number), create and return a list produced by performing a perfect riffle to the items by interleaving the items of the two halves of the list in an alternating fashion. When performing a perfect riffle shuffle, also known as the Faro shuffle, the list of items is split in two equal sized halves, either conceptually or in actuality. The first two elements of the result are then the first elements of those halves. The next two elements of the result are the second elements of those halves, followed by the third elements of those halves, and so on up to the last elements of those halves. The parameter out determines whether this function performs an out shuffle or an in uffle that determines which half of the deck the alternating card is first taken from. items out Expected result [1, 2, 3, 4, 5, 6, 7, 8] True [1, 5, 2, б, 3, 7, 4, 8] [1, 2, 3, 4, 5, 6, 7, 8] False [5, 1, 6, 2, 7, 3, 8, 4] [ ] True [] ['bob', 'jack'] True ['bob', 'jack'] ['bob', 'jack'] False ['jack', 'bob']
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps with 1 images

Blurred answer
Similar questions
Recommended textbooks for you
Computer Networking: A Top-Down Approach (7th Edi…
Computer Networking: A Top-Down Approach (7th Edi…
Computer Engineering
ISBN:
9780133594140
Author:
James Kurose, Keith Ross
Publisher:
PEARSON
Computer Organization and Design MIPS Edition, Fi…
Computer Organization and Design MIPS Edition, Fi…
Computer Engineering
ISBN:
9780124077263
Author:
David A. Patterson, John L. Hennessy
Publisher:
Elsevier Science
Network+ Guide to Networks (MindTap Course List)
Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:
9781337569330
Author:
Jill West, Tamara Dean, Jean Andrews
Publisher:
Cengage Learning
Concepts of Database Management
Concepts of Database Management
Computer Engineering
ISBN:
9781337093422
Author:
Joy L. Starks, Philip J. Pratt, Mary Z. Last
Publisher:
Cengage Learning
Prelude to Programming
Prelude to Programming
Computer Engineering
ISBN:
9780133750423
Author:
VENIT, Stewart
Publisher:
Pearson Education
Sc Business Data Communications and Networking, T…
Sc Business Data Communications and Networking, T…
Computer Engineering
ISBN:
9781119368830
Author:
FITZGERALD
Publisher:
WILEY