Complete the recursive function remove_last which creates a new list identical to the input list s but with the last element in the sequence that is equal to x removed. Hint: Remember that you can use negative indexing on lists! For example 1st [-1] refers to the last element in a list 1st, lst [-2] refers to the second to last element... def remove_last(x, s): """Create a new list that is identical to s but with the last element from the list that is equal to x removed. >>> remove_last(1, []) [] remove_last(1, [1]) >>> remove_last(1, [1,1]) [1] >>> remove_last(1, [2,1]) [2] >>> [] >>> remove_last(1, [3,1,2]) [3, 2] >>> remove_last(1, [3,1,2,1]) [3, 1, 2] >>> remove_last (5, [3, 5, 2, 5, 11]) [3, 5, 2, 11] HIGH "*** YOUR CODE HERE ***"

C++ Programming: From Problem Analysis to Program Design
8th Edition
ISBN:9781337102087
Author:D. S. Malik
Publisher:D. S. Malik
Chapter15: Recursion
Section: Chapter Questions
Problem 6PE
icon
Related questions
Question
Complete the recursive function remove_last which creates a new list identical to the input list s but
with the last element in the sequence that is equal to x removed.
Hint: Remember that you can use negative indexing on lists! For example 1st [-1] refers to the last
element in a list 1st, lst [-2] refers to the second to last element...
def remove_last(x, s):
"""Create a new list that is identical to s but with the last
element from the list that is equal to x removed.
>>> remove_last(1, [])
[]
>>> remove_last(1, [1])
[]
>>>
[1]
>>>
[2]
remove_last(1, [1,1])
remove_last(1, [2,1])
>>> remove_last(1, [3,1,2])
[3, 2]
>>> remove_last(1, [3,1,2,1])
[3, 1, 2]
>>> remove_last (5, [3, 5, 2, 5, 11])
[3, 5, 2, 11]
IIIII
"*** YOUR CODE HERE ***"
Illustrated here is a more complete doctest that shows good testing methodology. It is a little cumbersome
as documentation, but you'll want to think about it for your projects. Test every condition that might come
up. Then you won't be surprised when it does.
Transcribed Image Text:Complete the recursive function remove_last which creates a new list identical to the input list s but with the last element in the sequence that is equal to x removed. Hint: Remember that you can use negative indexing on lists! For example 1st [-1] refers to the last element in a list 1st, lst [-2] refers to the second to last element... def remove_last(x, s): """Create a new list that is identical to s but with the last element from the list that is equal to x removed. >>> remove_last(1, []) [] >>> remove_last(1, [1]) [] >>> [1] >>> [2] remove_last(1, [1,1]) remove_last(1, [2,1]) >>> remove_last(1, [3,1,2]) [3, 2] >>> remove_last(1, [3,1,2,1]) [3, 1, 2] >>> remove_last (5, [3, 5, 2, 5, 11]) [3, 5, 2, 11] IIIII "*** YOUR CODE HERE ***" Illustrated here is a more complete doctest that shows good testing methodology. It is a little cumbersome as documentation, but you'll want to think about it for your projects. Test every condition that might come up. Then you won't be surprised when it does.
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 4 steps with 2 images

Blurred answer
Knowledge Booster
Linked List Representation
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
  • SEE MORE QUESTIONS
Recommended textbooks for you
C++ Programming: From Problem Analysis to Program…
C++ Programming: From Problem Analysis to Program…
Computer Science
ISBN:
9781337102087
Author:
D. S. Malik
Publisher:
Cengage Learning