Question
You are given the pointer to the head node of a linked list and an integer to add to the list. Create a new node
You are given the pointer to the head node of a linked list and an integer to add to the list. Create a new node with the given integer. Insert this node at the tail of the linked list and return the head node of the linked list formed after inserting this new node. The given head pointer may be null, meaning that the initial list is empty.
Function Description
Complete the insertNodeAtTail function in the editor below.
insertNodeAtTail has the following parameters:
SinglyLinkedListNode pointer head: a reference to the head of a list
int data: the data value for the node to insert
Returns
SinglyLinkedListNode pointer: reference to the head of the modified linked list
Input Format
The first line contains an integer , the number of elements in the linked list. The next lines contain an integer each, the value that needs to be inserted at tail.
Constraints
Sample Input
STDIN Function ----- -------- 5 size of linked list n = 5 141 linked list data values 141..474 302 164 530 474
Sample Output
141 302 164 530 474
Explanation
First the linked list is NULL. After inserting 141, the list is 141 -> NULL. After inserting 302, the list is 141 -> 302 -> NULL. After inserting 164, the list is 141 -> 302 -> 164 -> NULL. After inserting 530, the list is 141 -> 302 -> 164 -> 530 -> NULL. After inserting 474, the list is 141 -> 302 -> 164 -> 530 -> 474 -> NULL, which is the final list.
#!/bin/python3
import math import os import random import re import sys
class SinglyLinkedListNode: def __init__(self, node_data): self.data = node_data self.next = None
class SinglyLinkedList: def __init__(self): self.head = None
def print_singly_linked_list(node, sep, fptr): while node: fptr.write(str(node.data))
node = node.next
if node: fptr.write(sep)
# Complete the insertNodeAtTail function below.
# # For your reference: # # SinglyLinkedListNode: # int data # SinglyLinkedListNode next # # def insertNodeAtTail(head, data):
if __name__ == '__main__': fptr = open(os.environ['OUTPUT_PATH'], 'w')
llist_count = int(input())
llist = SinglyLinkedList()
for i in range(llist_count): llist_item = int(input()) llist_head = insertNodeAtTail(llist.head, llist_item) llist.head = llist_head
print_singly_linked_list(llist.head, ' ', fptr) fptr.write(' ')
fptr.close()
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started