This is a Java Program to Implement Sorted List. Here Sorted list is implemented using an array list and each inserted element is placed at correct position in the list by insertion sort.
Here is the source code of the Java Program to Implement Sorted List. The Java program is successfully compiled and run on a Windows system. The program output is also shown below.
/**
** Java Program to Implement Sorted List
**/
import java.util.Scanner;
import java.util.ArrayList;
import java.util.Collections;
class SortedList
{
private ArrayList<Integer> list;
/** Constructor **/
public SortedList()
{
list = new ArrayList<Integer>();
}
/** Function to check if list is empty **/
public boolean isEmpty()
{
return list.size() == 0 || list == null;
}
/** Function to clear list **/
public void clear()
{
list = new ArrayList<Integer>();
}
/** Function to get size of list **/
public int size()
{
return list.size();
}
/** Function to add element to list **/
public void add(int ele)
{
int pos = list.size();
list.add(ele);
while (pos > 0 && ele < list.get(pos - 1))
{
list.set(pos, list.get(pos - 1));
pos--;
}
list.set(pos, ele);
}
/** Function to remove element at index **/
public void remove(int ind)
{
list.remove(ind);
}
/** Function to perform binary search **/
public int binarySearch(int ele)
{
return Collections.binarySearch(list, ele);
}
/** Function to check if element is present in list **/
public boolean contains(int ele)
{
return binarySearch(ele) >= 0;
}
/** Function to string **/
public String toString()
{
return list.toString();
}
}
/** Class SortedList **/
public class SortedListTest
{
public static void main(String[] args)
{
Scanner scan = new Scanner(System.in);
/* Creating object of class SortedList */
SortedList list = new SortedList();
System.out.println("Sorted List Test\n");
char ch;
/* Perform list operations */
do
{
System.out.println("\nSorted List Operations\n");
System.out.println("1. insert");
System.out.println("2. remove ");
System.out.println("3. binary search");
System.out.println("4. contains");
System.out.println("5. check empty");
System.out.println("6. get size");
System.out.println("7. clear");
int choice = scan.nextInt();
switch (choice)
{
case 1 :
System.out.println("Enter integer element to add");
list.add( scan.nextInt() );
break;
case 2 :
System.out.println("Enter index");
list.remove(scan.nextInt() );
break;
case 3 :
System.out.println("Enter integer element to search");
System.out.println("Binary search result : "+ list.binarySearch(scan.nextInt() ));
break;
case 4 :
System.out.println("Enter integer element ");
System.out.println("Contains result : "+ list.contains(scan.nextInt() ));
break;
case 5 :
System.out.println("Empty status = "+ list.isEmpty());
break;
case 6 :
System.out.println("Size = "+ list.size() +" \n");
break;
case 7 :
System.out.println("Sorted List cleared");
list.clear();
break;
default :
System.out.println("Wrong Entry \n ");
break;
}
/* Display List */
System.out.println(list);
System.out.println("\nDo you want to continue (Type y or n) \n");
ch = scan.next().charAt(0);
} while (ch == 'Y'|| ch == 'y');
}
}
Sorted List Test Sorted List Operations 1. insert 2. remove 3. binary search 4. contains 5. check empty 6. get size 7. clear 5 Empty status = true [] Do you want to continue (Type y or n) y Sorted List Operations 1. insert 2. remove 3. binary search 4. contains 5. check empty 6. get size 7. clear 1 Enter integer element to add 24 [24] Do you want to continue (Type y or n) y Sorted List Operations 1. insert 2. remove 3. binary search 4. contains 5. check empty 6. get size 7. clear 1 Enter integer element to add 6 [6, 24] Do you want to continue (Type y or n) y Sorted List Operations 1. insert 2. remove 3. binary search 4. contains 5. check empty 6. get size 7. clear 1 Enter integer element to add 28 [6, 24, 28] Do you want to continue (Type y or n) y Sorted List Operations 1. insert 2. remove 3. binary search 4. contains 5. check empty 6. get size 7. clear 1 Enter integer element to add 19 [6, 19, 24, 28] Do you want to continue (Type y or n) y Sorted List Operations 1. insert 2. remove 3. binary search 4. contains 5. check empty 6. get size 7. clear 1 Enter integer element to add 63 [6, 19, 24, 28, 63] Do you want to continue (Type y or n) y Sorted List Operations 1. insert 2. remove 3. binary search 4. contains 5. check empty 6. get size 7. clear 1 Enter integer element to add 94 [6, 19, 24, 28, 63, 94] Do you want to continue (Type y or n) y Sorted List Operations 1. insert 2. remove 3. binary search 4. contains 5. check empty 6. get size 7. clear 1 Enter integer element to add 5 [5, 6, 19, 24, 28, 63, 94] Do you want to continue (Type y or n) y Sorted List Operations 1. insert 2. remove 3. binary search 4. contains 5. check empty 6. get size 7. clear 1 Enter integer element to add 24 [5, 6, 19, 24, 24, 28, 63, 94] Do you want to continue (Type y or n) y Sorted List Operations 1. insert 2. remove 3. binary search 4. contains 5. check empty 6. get size 7. clear 2 Enter index 3 [5, 6, 19, 24, 28, 63, 94] Do you want to continue (Type y or n) y Sorted List Operations 1. insert 2. remove 3. binary search 4. contains 5. check empty 6. get size 7. clear 6 Size = 7 [5, 6, 19, 24, 28, 63, 94] Do you want to continue (Type y or n) y Sorted List Operations 1. insert 2. remove 3. binary search 4. contains 5. check empty 6. get size 7. clear 3 Enter integer element to search 63 Binary search result : 5 [5, 6, 19, 24, 28, 63, 94] Do you want to continue (Type y or n) y Sorted List Operations 1. insert 2. remove 3. binary search 4. contains 5. check empty 6. get size 7. clear 4 Enter integer element 6 Contains result : true [5, 6, 19, 24, 28, 63, 94] Do you want to continue (Type y or n) y Sorted List Operations 1. insert 2. remove 3. binary search 4. contains 5. check empty 6. get size 7. clear 4 Enter integer element 7 Contains result : false [5, 6, 19, 24, 28, 63, 94] Do you want to continue (Type y or n) y Sorted List Operations 1. insert 2. remove 3. binary search 4. contains 5. check empty 6. get size 7. clear 2 Enter index 2 [5, 6, 24, 28, 63, 94] Do you want to continue (Type y or n) y Sorted List Operations 1. insert 2. remove 3. binary search 4. contains 5. check empty 6. get size 7. clear 6 Size = 6 [5, 6, 24, 28, 63, 94] Do you want to continue (Type y or n) y Sorted List Operations 1. insert 2. remove 3. binary search 4. contains 5. check empty 6. get size 7. clear 7 Sorted List cleared [] Do you want to continue (Type y or n) y Sorted List Operations 1. insert 2. remove 3. binary search 4. contains 5. check empty 6. get size 7. clear 5 Empty status = true [] Do you want to continue (Type y or n) n
Related posts:
Add Multiple Items to an Java ArrayList
Java Program to Implement ConcurrentSkipListMap API
TreeSet và sử dụng Comparable, Comparator trong java
Spring Boot Annotations
Java Program to Use rand and srand Functions
Functional Interface trong Java 8
Java Program to Find Hamiltonian Cycle in an UnWeighted Graph
Spring MVC Async vs Spring WebFlux
DistinctBy in the Java Stream API
Hướng dẫn Java Design Pattern – Singleton
Converting a Stack Trace to a String in Java
Java – Reader to InputStream
Java Program to Implement Binary Tree
Java Byte Array to InputStream
Custom JUnit 4 Test Runners
Java Program to Implement Quick Sort with Given Complexity Constraint
Chuyển đổi từ HashMap sang ArrayList
Spring Cloud Bus
A Guide to the finalize Method in Java
Hướng dẫn Java Design Pattern – Prototype
Java Program to Implement Caesar Cypher
Creating a Custom Starter with Spring Boot
Java Program to Find Nearest Neighbor Using Linear Search
Java Program to Check whether Directed Graph is Connected using BFS
A Guide to TreeSet in Java
Reactive WebSockets with Spring 5
Spring Boot Change Context Path
Java 8 Predicate Chain
Java Program to Construct an Expression Tree for an Postfix Expression
Java Program to implement Sparse Vector
How to Convert List to Map in Java
Java Program to Find SSSP (Single Source Shortest Path) in DAG (Directed Acyclic Graphs)