Searching | Building Blocks Java (original) (raw)

One common task is searching an array for a specified value. Sometimes the value may be known in advance. Other times you may want to know the largest or smallest element.

Unless you have some special knowledge of the contents of the array (for instance, that it is sorted) the quickest algorithm for searching an array is straight-forward linear search. Use a for loop to look at every element of the array until you find the element you want. Here’s a simple method that prints the largest and smallest elements of an array:

   static void printLargestAndSmallestElements (int[] n) {

    int max = n[0];
    int min = n[0];

    for (int i=1; i < n.length; i++) {
      if (max < n[i]) {
        max = n[i];
      }
      if (min > n[i]) {
        min = n[i];
      }
    }

    System.out.println("Maximum: " + max);
    System.out.println("Minimum: " + min);

    return;

  }
  

If you’re going to search an array many times, you may want to sort the array, before searching it. We’ll discuss sorting algorithms in the next section.

This entry was posted on Wednesday, July 29th, 2009 at 9:26 am and is filed under Uncategorized. You can follow any responses to this entry through the RSS 2.0 feed. Both comments and pings are currently closed.