Reverse a doubly linked list hackerrank solution java

Problem solution in Python programming.

#!/bin/python3 import math import os import random import re import sys class DoublyLinkedListNode: def __init__[self, node_data]: self.data = node_data self.next = None self.prev = None class DoublyLinkedList: def __init__[self]: self.head = None self.tail = None def insert_node[self, node_data]: node = DoublyLinkedListNode[node_data] if not self.head: self.head = node else: self.tail.next = node node.prev = self.tail self.tail = node def print_doubly_linked_list[node, sep, fptr]: while node: fptr.write[str[node.data]] node = node.next if node: fptr.write[sep] # Complete the reverse function below. # # For your reference: # # DoublyLinkedListNode: # int data # DoublyLinkedListNode next # DoublyLinkedListNode prev # # def reverse[head]: if head == None or head.next == None: return head while True: temp = head.next head.next = head.prev head.prev = temp head = head.prev if head.next == None: break temp = head.next head.next = head.prev head.prev = temp return head if __name__ == '__main__': fptr = open[os.environ['OUTPUT_PATH'], 'w'] t = int[input[]] for t_itr in range[t]: llist_count = int[input[]] llist = DoublyLinkedList[] for _ in range[llist_count]: llist_item = int[input[]] llist.insert_node[llist_item] llist1 = reverse[llist.head] print_doubly_linked_list[llist1, ' ', fptr] fptr.write['\n'] fptr.close[]





Java Solution For HackerRank Problem: Reverse a doubly linked list

12/11/2020bytebot

#java#codingchallenge#linked-list#hackerrank-solutions

Reverse a doubly linked list, is a HackerRank problem from Linked List subdomain. In this post we will see how we can solve this challenge in Java

Python Solution For HackerRank Problem: Reverse a doubly linked list

12/13/2020bytebot

#hackerrank-solutions#codingchallenge#python#data-structures#linked-list

Reverse a doubly linked list, is a HackerRank problem from Linked Lists subdomain. In this post we will see how we can solve this challenge in Python

Reverse a Doubly Linked List

Given a Doubly Linked List, the task is to reverse the given Doubly Linked List.

See below diagrams for example.

[a] Original Doubly Linked List

[b] Reversed Doubly Linked List

Here is a simple method for reversing a Doubly Linked List. All we need to do is swap prev and next pointers for all nodes, change prev of the head [or start] and change the head pointer in the end.



Video liên quan

Bài mới nhất

Chủ Đề