sequences what is the complexity of many of the common operations on sequences and how is that complexity affected by the underlying organization of the data you will also be presented with few interesting programming problems that will help you learn to select and use appropriate data structures to solve some interesting problems lists in the first and second we developed sequence called pylist the pylist class is really just repackaging of the python list class the example sequence demonstrates some of the operators that are supported by python in this section we want to look more deeply into how lists are implemented there are many operations supported on lists contains the full list the table in fig is subset of the operations supported by lists each of the operations in the table has an associated complexity the performance of an algorithm depends on the complexity of the operations used in implementing that algorithm in the following sections we'll further develop our own list datatypecalled pylistusing the built-in list only for setting and getting elements in list the indexed get and indexed set operations can be observed to have ( complexity this complexity is achieved because the memory of computer is randomly accessiblewhich is why it is called random access memory in chap we spent some time demonstrating that each location within list is accessible in the same amount of time regardless of list size and location being retrieved in the following sections we'll enhance the pylist datatype to support the operations given in this table operation complexity usage method list creation (nor ( list(ycalls __init__(yindexed get ( [ix __getitem__(iindexed set ( [ia __setitem__( ,aconcatenate (nz= + __add__(yappend ( append(ax append(ainsert (nx insert( ,ex insert( , )delete (ndel [ix __delitem__(iequality (nx = __eq__(yiterate (nfor in xx __iter__(length ( len(xx __len__(membership (na in __contains__(asort ( log nx sort( sort(fig complexity of list operations this copy belongs to 'acha