title: The largest second number
body: <p>I searched everywhere for a solution to find the second largest number, but I got one solution in all sites, and it's wrong. </p>
  
  <p>The code I found:</p>
  
  <pre><code>public static void main(String[] args) {
      int arr[] = { 1, 23, 47, 81, 92, 88, 52, 48, 56, 66, 65, 76, 71, 85,
                     49, 53, 56, 61, 65, 84 };
      secondLargeNumber(arr);
  }
  
  public static void secondLargeNumber(int[] arr) {
      int largest = arr[0];
      int secondLargest = arr[0];
      for (int i = 0; i &lt; arr.length; i++) {
          if (arr[i] &gt; largest) {
              secondLargest = largest;
              largest = arr[i];
          } else if (arr[i] &gt; secondLargest) {
              secondLargest = arr[i];
          }
      }
      System.out.println("second largest in array is:" + secondLargest);
  
  }
  </code></pre>
  
  <p>The code works fine , but if I changed the input sequence to:</p>
  
  <pre><code> int arr[] = { 11, 10, 11, 2, 3, 4, 5, 6, 7, 8};
  </code></pre>
  
  <p>the output will be:</p>
  
  <pre><code>second largest in array is:11
  </code></pre>
  
  <p>I really don't know what to do!</p>