Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public static ArrayList<Character> getLongestCommonSubstring(char[] array1, char[] array2) {
- ArrayList<Character> charArray = new ArrayList<>();
- ArrayList<Character> tempArray = new ArrayList<>();
- boolean canAddNextCharacter = false;
- int index = 0;
- for (int i = 0; i < array1.length; i ++) {
- for(int j = index; j < array2.length; j++) {
- if(array1[i] != array2[j]) {
- continue;
- }
- if(array1[i] == array2[j]) {
- charArray.add(array1[i]);
- canAddNextCharacter = ((j + 1) < array2.length - 1) && ((i+1) < array1.length -1) && (array1[i+1] == array2[j+1]);
- break;
- }
- canAddNextCharacter = false;
- }
- if(charArray.size() > tempArray.size()) {
- tempArray = charArray;
- }
- if(!canAddNextCharacter) {
- charArray = new ArrayList<>();
- index = 0;
- }
- }
- return tempArray;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement