Sample Python Exam Problem Solutions

From EECS 182
Sample Python Exam Problem Solutions
Jump to: navigation, search
Line 10: Line 10:
 
Some examples:  
 
Some examples:  
  
mylist().append(4).append(3).last(): same as 3
+
* mylist().append(4).append(3).last(): same as 3
mylist().append(4).append(3).pop(): same as mylist().append(4)
+
* mylist().append(4).append(3).pop(): same as mylist().append(4)
mylist().append(4).isempty(): False
+
* mylist().append(4).isempty(): False
mylist().append(4).pop().isempty(): True
+
* mylist().append(4).pop().isempty(): True
  
 
Given the above mylist type, implement the following functions only using the above interface to mylist.
 
Given the above mylist type, implement the following functions only using the above interface to mylist.

Revision as of 01:17, December 5, 2012

Problem: You are given a special type of List called mylist that has only a subset of functionality of Python lists. It provides the following methods:

Some examples:

Given the above mylist type, implement the following functions only using the above interface to mylist.

A. deletelasttwo(L): returns a mylist that contains all but the last two elements of L, in same sequence.

B. replacelast(L, item): returns a mylist that is same as L, except that the last value is replaced by item.

C. lookup(L, k): return the kth item in the mylist, where indexing starts at 0.

D. concat(L1, L2): returns a mylist that is a concatenation of L1 and L2.

E. insert_first(item, L): returns a mylist that contains item followed by items in L, in sequence.

F. len(L): returns the number of objects in mylist.

G; assign(L, index, val): Returns a new list identical to L, but in which the item at the index position in L is replaced by val.

All the methods are non-destructive, in the sense that the parameter L need not be modified.

Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox
EECS @ UM
Tools