PYTHON i need complete code for this as i have already done more then half of th
ID: 3594449 • Letter: P
Question
PYTHON i need complete code for this as i have already done more then half of the code but you have write the code where it says “add your code here” there are 4 places where you have to add the code.Dont tell me this is too long question to get ans for because its a single assignment and im looking for the code please.
Add your code where it says “add your code here” please please follow the guidelines given so i can get this code right 1. Introduction In this lab, we use Doubly Linked Lists to store positive integers and perform addition operations. 2. Objectives The purpose of this assignment is to help you Enhance your understanding of doubly linked lists Practice how to perform operations on doubly linked lists Note: Before you start, if you are not familiar with DoublyLinkedLists you are recommended to review the sample codes we covered in lecture first. 3. Background The purpose of this assignment is to input two positive integers, store each number in a doubly linked list (where each digit is data in a node), and perform addition on them by implementing various operations of doubly linked list. For example, the first two doubly linked lists below represent 1234, and 99 respectively. The addition of these two numbers: 1333, is represented as the third doubly linked list. Head Tail dll I None None dll2 one First number = 1234 second number 99 Total one - 1333 Head Tail Head Tail sum None None
Explanation / Answer
Here is answer of all incomplete code in python Doubly link list.
i just write the remaining code here you may want to copy this remaining code abd run on your machine.
1. Answer for function (def tolinkednumber(self.string))
#CODE START from here
def tolinkednumber(self,string):#function add digits in link list
for Char in string: # for loop for traverse string
self.addlast(Char) # add digit at last node of link list
#CODE END
#The logic in this function only get character (means digit) from string and add it to last node of link list
2.Second Code for make string form link list nodes
#CODE START
def _str_(self):#function start
string=[] #Declare string as a list
Head=self.head() # get Head pointer from input list
while Head is not None: # while loop for traverse all nodes
string.append(Head.data) # append data in string list
string="".join(string) # join list to represent in a string
return string #return string
#CODE END
3.Code for add two linked list
#CODE START
def sumlinkednumbers(self,dll1,dll2):
dllsum=DoublyLinkedNumber()
carry=0
first_tail=dll1.tail()
second_tail=dll2.tail()
Length1=self._len(dll1)
Length2=self._len(dll2)
if Length1>Length2:
Max=Length1
else:
Max=Length2
while Max is not 0: # while loop for traverse largest length list
if first_tail is not None and second tail is not None: # if noth list are full
digit1=first_tail.data
digit2=second_tail.data
Sum=digit1+digit2+carry
if len(str(carry))>1:carry=int(str(Sum)[0])
else:carry=0
dllsum.addfirst(str(Sum)[-1])
first_tail=first_tail.prev
second_tail=second_tail.prev
elif first_tail is not None and second_tail is None:# only first list is full
digit1=first_tail.data
Sum=digit1+carry
if len(str(carry))>1:carry=int(str(Sum)[0])
else:carry=0
dllsum.addfirst(str(Sum)[-1])
first_tail=first_tail.prev
elif second_tail is not None and first_tail is None:# only second list is full
digit1=second_tail.data
Sum=digit1+carry
if len(str(carry))>1:carry=int(str(Sum)[0])
else:carry=0
dllsum.addfirst(str(Sum)[-1])
second_tail=second_tail.prev
Max-=1 # Max decrement for while loop end purpose
return dllsum # return dllsum pointer
#CODE END
#one change in calling in self._str_(print(sumlinkednumber(dll1,dll2))) # apply _sr_ function
4. bs function is easy to debug and find out errors
I write whole code again here
#Code START
def bs (L,item,left,right):
if right is None:right=len(L)
if right -left==0:return False
if right-left==1: return L[left]==item
median=((right+left)//2))%10
if item<L[median]:
return bs(L,item,left,median)
else: return bs(L,item,median,right)
#Code End Here
#Thank You
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.