# School, 09.09.2017, Ex6, max sequence length

Sep 9th, 2017
129
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
1.
2. public class Ex6 {
3.     // Write a Java program to find the length of the longest consecutive
4.     // elements sequence from a given unsorted array of integers.
5.     // Sample array: [49, 1, 3, 200, 2, 4, 70, 5]
6.     // The longest consecutive elements sequence is [1, 2, 3, 4, 5], therefore
7.     // the program will return its length 5.
8.
9.     public static void main(String[] args) {
10.         int[] arr = { 49, 1, 3, 200, 2, 4, 70, 5 };
11.
12.         int maxLength = 0;
13.
14.         for (int i = 0; i < arr.length; i += 1) {
15.             int length = chainLength(arr, arr[i]);
16.             if (length > maxLength) {
17.                 maxLength = length;
18.             }
19.         }
20.
21.         System.out.println("Max chain length is " + maxLength);
22.
23.     }
24.
25.     // return true if n exists in array
26.     public static boolean isFound(int[] arr, int n) {
27.         for (int i = 0; i < arr.length; i += 1) {
28.             if (arr[i] == n)
29.                 return true;
30.         }
31.
32.         return false;
33.     }
34.
35.     // length of chain starting from start
36.     public static int chainLength(int[] arr, int start) {
37.         int length = 0;
38.
39.         while (isFound(arr, start)) {
40.             length += 1;
41.             start += 1;
42.         }
43.
44.         return length;
45.     }
46.
47. }
RAW Paste Data