Java Substring Comparisons

Sort by

recency

|

1749 Discussions

|

  • + 0 comments

    public static String getSmallestAndLargest(String s, int k) {

        String small =s.substring(0,k);
        String largest =s.substring(0,k);
    
        for(int i=0;i<=s.length()-k;i++){
            String sub=s.substring(i,i+k);
    
       if(sub.compareTo(small)<0) {
                small=sub; } 
    
                 else if(sub.compareTo(largest)>0)
    
        { largest=sub;  }}
        return small + "\n" + largest;
    }
    
  • + 0 comments
    import java.io.*;
    import java.util.*;
    
    public class Solution {
    
        public static void main(String[] args) {
            var entry = new Scanner(System.in);
            String s = entry.next();
            int k = entry.nextInt();
            
            System.out.println(getSmallestAndLargest(s, k));
        }
        
        private static String getSmallestAndLargest(String s, int k){
            var lista = new ArrayList<String>();
            
            for (int i = 0; i <= s.length()-k; i++){
                String subS = s.substring(i, i+k);
                lista.add(subS);
            }
            
            Collections.sort(lista);
            
            return lista.get(0) + "\n" + lista.get(lista.size()-1);
        }
    }
    
  • + 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?