From page 147, #25: Design and implement an experiment that will compare the  performance of a Python list with a list implmentd as a linked list

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

From page 147, #25: Design and implement an experiment that will compare the 
performance of a Python list with a list implmentd as a linked list

 

class EmptyStack (Exception):
_init__(self):
def
super (). __init__('Stack is empty: invalid operation!
#linked list node
class Node:
def
_init_ (self):
self.data = None
self.next = None
#linked list class
class LinkedList:
def
init (self):
self.head = None
self.size = 0
def get_size (self):
return self.size
def add (self, item) : #to push element to stack
self.node = Node ()
self.node.data = item
self.node.next = self.head
self.head = self.node
self.size += 1
def remove (self):
if self.head == None:
raise EmptyStack
self.head_item = self.head.data
self.head = self.head.next
self.size = 1
return self.head_item
#creating Stack using linked list
class Stack:
def init (self):
-
self.s = LinkedList ()
def get_size (self):
return self.s.get_size()
def push (self, item): # to push element to stack
self.s.add(item)
def pop (self):
return self.s.remove()
1
==
name
main':
stack Stack()
for i in range (8):
stack.push(i*2)
print('size: {}'.format (stack.get_size()))
print ("Popped element: ", stack.pop())
print ("New size:" stack.get_size())
I
if
Transcribed Image Text:class EmptyStack (Exception): _init__(self): def super (). __init__('Stack is empty: invalid operation! #linked list node class Node: def _init_ (self): self.data = None self.next = None #linked list class class LinkedList: def init (self): self.head = None self.size = 0 def get_size (self): return self.size def add (self, item) : #to push element to stack self.node = Node () self.node.data = item self.node.next = self.head self.head = self.node self.size += 1 def remove (self): if self.head == None: raise EmptyStack self.head_item = self.head.data self.head = self.head.next self.size = 1 return self.head_item #creating Stack using linked list class Stack: def init (self): - self.s = LinkedList () def get_size (self): return self.s.get_size() def push (self, item): # to push element to stack self.s.add(item) def pop (self): return self.s.remove() 1 == name main': stack Stack() for i in range (8): stack.push(i*2) print('size: {}'.format (stack.get_size())) print ("Popped element: ", stack.pop()) print ("New size:" stack.get_size()) I if
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps with 4 images

Blurred answer
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