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:
Remove the First Element from a List
Apache Commons Collections SetUtils
Java Program to Perform Matrix Multiplication
Java Program to Implement Booth Algorithm
Java Program to Implement String Matching Using Vectors
Java Program to Implement Quick Hull Algorithm to Find Convex Hull
Hướng dẫn Java Design Pattern – Abstract Factory
Jackson JSON Views
Java 8 – Powerful Comparison with Lambdas
Setting the Java Version in Maven
Java Program to Check Whether Topological Sorting can be Performed in a Graph
Java Program to Implement Double Ended Queue
Java Program to Generate All Subsets of a Given Set in the Lexico Graphic Order
A Guide to JPA with Spring
Spring WebClient vs. RestTemplate
A Guide to BitSet in Java
Java Program to Search for an Element in a Binary Search Tree
Convert XML to JSON Using Jackson
Lớp HashMap trong Java
HttpClient Timeout
Convert Hex to ASCII in Java
Fixing 401s with CORS Preflights and Spring Security
Java Program to Find Transpose of a Graph Matrix
Java Program to Implement Sieve Of Eratosthenes
Custom Error Pages with Spring MVC
Spring Data JPA and Null Parameters
Spring WebClient Filters
Template Engines for Spring
Getting Started with Custom Deserialization in Jackson
Simple Single Sign-On with Spring Security OAuth2
Một số nguyên tắc, định luật trong lập trình
Java Program to Optimize Wire Length in Electrical Circuit