Skip to content

Latest commit

 

History

History
executable file
·
38 lines (31 loc) · 1.13 KB

File metadata and controls

executable file
·
38 lines (31 loc) · 1.13 KB

Window Substring


This is the templete for solving the window substring problem using two pointers. The template is revised based on this

Template

int findSubstring(string s){
    int[] tab = new int[128];
    int cnt; // check whether the substring is valid
    int i=0, j=0; //two pointers, one point to tail and one  head
    int d; //the length of substring

    for() { /* initialize the hash map here */ }

    for(j=0;j<s.length();j++){

        if(tab[s.charAt(j)]?){  
            cnt?/* modify counter here */ 
            tab[s.charAt(j)]++;
        }

        while(/* counter condition */){ 
             
             /* update d here if finding minimum*/

            //increase begin to make it invalid/valid again  
            if(tab[s.charAt(i)]?){ 
                cnt?/*modify counter here*/ 
                tab[s.charAt(i)]--;
                i++; 
            }
        }  
        //len = j-i+1
        /* update d here if finding maximum*/
    }
    return d;
  }