Java Substring Comparisons

Sort by

recency

|

1747 Discussions

|

  • + 0 comments

    import java.util.Scanner;

    public class Solution {

    public static String getSmallestAndLargest(String s, int k) {
        String smallest = s.substring(0,k);
        String largest = s.substring(0,k);
        String str;
        int size = s.length()-k+1;
        for(int i=0;i<size;++i){
            str = s.substring(i,i+k);
            if(smallest.compareTo(str) > 0)
            smallest =str;
            if(largest.compareTo(str)<0)
            largest = str;           
        }
        return smallest + "\n" + largest;
    }
    
  • + 0 comments

    import java.util.Scanner;

    public class Solution {

    public static String getSmallestAndLargest(String s, int k) {
        String smallest = s.substring(0,k);
        String largest = s.substring(0,k);
        String str;
        int size=s.length()-k+1;
        for(int i=0;i<size;i++)
        {
            str=s.substring(i,i+k);
            if(smallest.compareTo(str)>0)
            smallest=str;
            if(largest.compareTo(str)<0)
            largest=str;
        }
        // Complete the function
        // 'smallest' must be the lexicographically smallest substring of length 'k'
        // 'largest' must be the lexicographically largest substring of length 'k'
    
        return smallest + "\n" + largest;
    }
    
  • + 0 comments

    i have a doubt in this problem , whether we have create a substring from the baseString?

  • + 0 comments

    Here is Java Substring Comparisons solution - https://programmingoneonone.com/hackerrank-java-substring-comparisons-problem-solution.html

  • + 0 comments
        ArrayList<String> substrings = new ArrayList<>();
        for(int i=0;i<=s.length()-k;i++){
            String sub = s.substring(i,i+k);
            substrings.add(sub);  
        }
        smallest = substrings.get(0);
        largest = substrings.get(0);
        for(int j=1;j<substrings.size();j++){
            String currentword = substrings.get(j);
            if(currentword.compareTo(smallest)<0){
                smallest=currentword;
            }
            if(currentword.compareTo(largest)>0){
                largest=currentword;
            }
        }
         return smallest + "\n" + largest;
    }