Inserting an Element into a Sorted Array

From Java Example Source Code

Jump to: navigation, search

Contents

[edit] Overview - Inserting an Element into a Sorted Array

This Java example program shows how to insert an element into a sorted array.

[edit] Java Source Code

  • Package: example.array
  • File: SearchTest.java
  1. package example.array;
  2.  
  3. import java.util.Arrays;
  4.  
  5. public class SearchTest {
  6.     public static void main(String args[]) throws Exception {
  7. 	int array[] = { 2, 5, -2, 6, -3, 8, 0, -7, -9, 4 };
  8.  
  9. 	// Ensure array sorted
  10. 	Arrays.sort(array);
  11. 	printArray("Sorted array", array);
  12.  
  13. 	// Search for element in array
  14. 	int index = Arrays.binarySearch(array, 2);
  15. 	System.out.println("Found 2 at " + index);
  16.  
  17. 	// Search for element not in array
  18. 	index = Arrays.binarySearch(array, 1);
  19. 	System.out.println("Didn't find 1 at " + index);
  20.  
  21. 	// Insert
  22. 	int newIndex = -index - 1;
  23. 	array = insertElement(array, 1, newIndex);
  24. 	printArray("With 1 added", array);
  25.  
  26.     }
  27.  
  28.     private static void printArray(String message, int array[]) {
  29. 	System.out.println(message + ": [length: " + array.length + "]");
  30.  
  31. 	for (int i = 0, n = array.length; i < n; i++) {
  32. 	    if (i != 0)
  33. 		System.out.print(", ");
  34. 	    System.out.print(array[i]);
  35. 	}
  36. 	System.out.println();
  37.     }
  38.  
  39.     private static int[] insertElement(int original[], int element, int index) {
  40. 	int length = original.length;
  41. 	int destination[] = new int[length + 1];
  42. 	System.arraycopy(original, 0, destination, 0, index);
  43. 	destination[index] = element;
  44. 	System.arraycopy(original, index, destination, index + 1, length - index);
  45. 	return destination;
  46.     }
  47. }

[edit] What Result You Can Get

run the program, you will get:

Sorted array: [length: 10]
-9, -7, -3, -2, 0, 2, 4, 5, 6, 8
Found 2 at 5
Didn't find 1 at -6
With 1 added: [length: 11]
-9, -7, -3, -2, 0, 1, 2, 4, 5, 6, 8

[edit] Required External Libraries and/or Files for this Java Example

Need nothing.


[edit] How to Run this Java Example Program

We recommend running this Java example program with Eclipse.

For assistance in working with Eclipse, please see How to Run Java Program with Eclipse.

It's fairly easy.



[edit] Question & Answer

Any question?

Click edit and post your question or answer here.


Personal tools