Java Substring Comparisons

  • + 16 comments

    Here is my way, hope it could help someone

    		String smallest = s.substring(0, k);
            String largest = s.substring(2, 5);
            
            // Complete the function
            // 'smallest' must be the lexicographically smallest substring of length 'k'
            // 'largest' must be the lexicographically largest substring of length 'k'
            for ( int i = 0; i < s.length() - k + 1; i++) {
                if ( s.substring(i, i + k).compareTo(smallest) < 0) {
                    smallest = s.substring(i, i + k);
                } else if ( s.substring(i, i + k).compareTo(largest) > 0 ) {
                    largest = s.substring(i, i + k);
                }
            }