This is a Java Program to implement Direct Addressing Tables. Direct Addressing Tables are used when each element has a key drawn from a universe U = {0, 1, . . . ,m − 1} where m isn’t too large and each key is unique. Here Direct Addressing Tables is implemented using an array of strings where array index is the key.
Here is the source code of the Java program to implement Direct Addressing Tables. The Java program is successfully compiled and run on a Windows system. The program output is also shown below.
/* * Java Program to Implement Direct Addressing Tables */ import java.util.Scanner; class DirectAddressingTable { private String[] arr ; private final int DEFAULT_CAPACITY = 10001; /* Constructor */ public DirectAddressingTable() { arr = new String[DEFAULT_CAPACITY]; } /* Constructor */ public DirectAddressingTable(int capacity) { arr = new String[capacity + 1]; } /* function to insert */ public void insert(int k, String d) { arr[k] = d; } /* function to delete */ public void delete(int k) { arr[k] = null; } /* function to get value */ public String get(int k) { return arr[k]; } /* function to clear */ public void clear() { int l = arr.length; arr = new String[l]; } /* function to print */ public void printTable() { System.out.println("\nDirect Addressing Table : "); int l = arr.length; for (int i = 0; i < l; i++) if (arr[i] != null) System.out.println(i +" "+ arr[i]); System.out.println(); } } public class DirectAddressingTableTest { public static void main(String[] args) { Scanner scan = new Scanner(System.in); System.out.println("Direct Addressing Table Test\n\n"); /* Make object of DirectAddressingTable */ DirectAddressingTable dat = new DirectAddressingTable(); char ch; /* Perform DirectAddressingTable operations */ do { System.out.println("\nDirect Addressing Table Operations\n"); System.out.println("1. insert "); System.out.println("2. remove"); System.out.println("3. get"); System.out.println("4. clear"); int choice = scan.nextInt(); switch (choice) { case 1 : System.out.println("Enter int key and string value"); dat.insert( scan.nextInt(), scan.next() ); break; case 2 : System.out.println("Enter int key"); dat.delete( scan.nextInt() ); break; case 3 : System.out.println("Enter int key"); System.out.println("Value = "+ dat.get( scan.nextInt() )); break; case 4 : dat.clear(); System.out.println("Direct Addressing Table Cleared\n"); break; default : System.out.println("Wrong Entry \n "); break; } /* Display hash table */ dat.printTable(); System.out.println("\nDo you want to continue (Type y or n) \n"); ch = scan.next().charAt(0); } while (ch == 'Y'|| ch == 'y'); } }
Direct Addressing Table Test Direct Addressing Table Operations 1. insert 2. remove 3. get 4. clear 1 Enter int key and string value 6 mango Direct Addressing Table : 6 mango Do you want to continue (Type y or n) y Direct Addressing Table Operations 1. insert 2. remove 3. get 4. clear 1 Enter int key and string value 24 pineapple Direct Addressing Table : 6 mango 24 pineapple Do you want to continue (Type y or n) y Direct Addressing Table Operations 1. insert 2. remove 3. get 4. clear 1 Enter int key and string value 17 orange Direct Addressing Table : 6 mango 17 orange 24 pineapple Do you want to continue (Type y or n) y Direct Addressing Table Operations 1. insert 2. remove 3. get 4. clear 1 Enter int key and string value 1 apple Direct Addressing Table : 1 apple 6 mango 17 orange 24 pineapple Do you want to continue (Type y or n) y Direct Addressing Table Operations 1. insert 2. remove 3. get 4. clear 3 Enter int key 24 Value = pineapple Direct Addressing Table : 1 apple 6 mango 17 orange 24 pineapple Do you want to continue (Type y or n) y Direct Addressing Table Operations 1. insert 2. remove 3. get 4. clear 2 Enter int key 17 Direct Addressing Table : 1 apple 6 mango 24 pineapple Do you want to continue (Type y or n) y Direct Addressing Table Operations 1. insert 2. remove 3. get 4. clear 4 Direct Addressing Table Cleared Direct Addressing Table : Do you want to continue (Type y or n) n
Related posts:
Java Program to Find Hamiltonian Cycle in an UnWeighted Graph
Java Program to Represent Graph Using Incidence List
A Guide to EnumMap
Remove HTML tags from a file to extract only the TEXT
Java Program to Implement Merge Sort Algorithm on Linked List
Rest Web service: Filter và Interceptor với Jersey 2.x (P1)
Spring Autowiring of Generic Types
Guide to PriorityBlockingQueue in Java
Tránh lỗi ConcurrentModificationException trong Java như thế nào?
Java Program to Implement Min Heap
Thao tác với tập tin và thư mục trong Java
Servlet 3 Async Support with Spring MVC and Spring Security
Java Web Services – Jersey JAX-RS – REST và sử dụng REST API testing tools với Postman
Java Program to Implement the Edmond’s Algorithm for Maximum Cardinality Matching
Build a REST API with Spring and Java Config
Guide to WeakHashMap in Java
Logout in an OAuth Secured Application
Jackson Date
Java InputStream to Byte Array and ByteBuffer
Entity To DTO Conversion for a Spring REST API
How to Add a Single Element to a Stream
Tạo ứng dụng Java RESTful Client với thư viện Retrofit
Java Program to Implement TreeSet API
Spring MVC and the @ModelAttribute Annotation
Hướng dẫn Java Design Pattern – MVC
A Guide to BitSet in Java
The Guide to RestTemplate
Ép kiểu trong Java (Type casting)
Java Program to Implement Disjoint Set Data Structure
Setting the Java Version in Maven
Java Program to Implement Gabow Algorithm
Add Multiple Items to an Java ArrayList