This is a Java Program to implement Triply Linked List. Triply linked list is a list in which each node has 3 pointers pointing to three other nodes. Here a binary search tree is implemented using a triply linked list.
Here is the source code of the Java program to implement Triply Linked List. The Java program is successfully compiled and run on a Windows system. The program output is also shown below.
/* * Java Program to Implement Triply Linked List */ import java.util.Scanner; /* class TLLNode */ class TLLNode { TLLNode left, right, middle; int data; /* Constructor */ public TLLNode(int x) { data = x; left = null; right = null; middle = null; } } /* class TriplyLinkedList */ class TriplyLinkedList { TLLNode root, tmp; /* Constructor */ public TriplyLinkedList() { root = null; tmp = null; } /* function to check if empty */ public boolean isEmpty() { return root == null; } /* function to clear list */ public void makeEmpty() { root = null; tmp = null; } /* function to insert */ public void insert(int x) { root = insert(root, x); } /* function to insert element */ public TLLNode insert(TLLNode r, int x) { if (r == null) { r = new TLLNode(x); r.middle = tmp; } else { tmp = r; if (r.data >= x) r.left = insert(r.left, x); else r.right = insert(r.right, x); } return r; } /* Function for print */ public void printList() { printList(root); } private void printList(TLLNode r) { if (r != null) { printList(r.left); System.out.print(r.data +" "); printList(r.right); } } } /* class TriplyLinkedListTest */ public class TriplyLinkedListTest { public static void main(String[] args) { Scanner scan = new Scanner(System.in); System.out.println("Triply Linked List Test\n"); TriplyLinkedList tll = new TriplyLinkedList(); char ch; /* Perform list operations */ do { System.out.println("\nTriply Linked List Operations\n"); System.out.println("1. insert "); System.out.println("2. check empty"); System.out.println("3. make empty"); int choice = scan.nextInt(); switch (choice) { case 1 : System.out.println("Enter integer element to insert"); tll.insert( scan.nextInt() ); break; case 2 : System.out.println("Empty status = "+ tll.isEmpty()); break; case 3 : System.out.println("\nList Cleared\n"); tll.makeEmpty(); break; default : System.out.println("Wrong Entry \n "); break; } /* Display list */ System.out.print("\nList : "); tll.printList(); System.out.println("\nDo you want to continue (Type y or n) \n"); ch = scan.next().charAt(0); } while (ch == 'Y'|| ch == 'y'); } }
Triply Linked List Test Triply Linked List Operations 1. insert 2. check empty 3. make empty 1 Enter integer element to insert 97 List : 97 Do you want to continue (Type y or n) y Triply Linked List Operations 1. insert 2. check empty 3. make empty 1 Enter integer element to insert 24 List : 24 97 Do you want to continue (Type y or n) y Triply Linked List Operations 1. insert 2. check empty 3. make empty 1 Enter integer element to insert 6 List : 6 24 97 Do you want to continue (Type y or n) y Triply Linked List Operations 1. insert 2. check empty 3. make empty 1 Enter integer element to insert 19 List : 6 19 24 97 Do you want to continue (Type y or n) y Triply Linked List Operations 1. insert 2. check empty 3. make empty 1 Enter integer element to insert 94 List : 6 19 24 94 97 Do you want to continue (Type y or n) y Triply Linked List Operations 1. insert 2. check empty 3. make empty 1 Enter integer element to insert 57 List : 6 19 24 57 94 97 Do you want to continue (Type y or n) y Triply Linked List Operations 1. insert 2. check empty 3. make empty 1 Enter integer element to insert 23 List : 6 19 23 24 57 94 97 Do you want to continue (Type y or n) y Triply Linked List Operations 1. insert 2. check empty 3. make empty 2 Empty status = false List : 6 19 23 24 57 94 97 Do you want to continue (Type y or n) y Triply Linked List Operations 1. insert 2. check empty 3. make empty 3 List Cleared List : Do you want to continue (Type y or n) y Triply Linked List Operations 1. insert 2. check empty 3. make empty 2 Empty status = true List : Do you want to continue (Type y or n) n
Related posts:
A Guide to EnumMap
Lập trình đa luồng với CompletableFuture trong Java 8
Send an email with an attachment
Guide to PriorityBlockingQueue in Java
Marker Interface trong Java
Constructor Dependency Injection in Spring
Ways to Iterate Over a List in Java
Java Program to Implement Booth Algorithm
Spring Boot - CORS Support
Java Program to Implement Sorted Circular Doubly Linked List
Java Program to Check if a Given Set of Three Points Lie on a Single Line or Not
Java 8 and Infinite Streams
Guide to the Volatile Keyword in Java
XML-Based Injection in Spring
Java – InputStream to Reader
Hướng dẫn sử dụng Lớp FilePermission trong java
Introduction to Spliterator in Java
Wrapper Classes in Java
Spring Boot - Web Socket
Weak References in Java
Java Program to Implement Pairing Heap
Hướng dẫn Java Design Pattern – Adapter
Collection trong java
Java Program to Implement First Fit Decreasing for 1-D Objects and M Bins
Java Program to Print only Odd Numbered Levels of a Tree
Filtering a Stream of Optionals in Java
Dynamic Proxies in Java
Life Cycle of a Thread in Java
Convert String to Byte Array and Reverse in Java
Error Handling for REST with Spring
Java Program to Find Minimum Element in an Array using Linear Search
Configuring a DataSource Programmatically in Spring Boot