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

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!