代码改变世界

挪动了一个if语句的位置,运行速度大幅提升

2021-09-11 01:24  钱先生  阅读(44)  评论(0编辑  收藏  举报

问题: 几乎是同样的两段代码,只是挪动了最后一个if语句的位置,运行速度提升很多,为什么?

 

代码:

//Leedcode 1816 truncateSentence


//0ms faster than 100% java solution
public String truncateSentence(String s, int k) {
        int index=0;
        for(int i=0;i<s.length();i++){
            if(s.charAt(i)==' '){
                k--;
                if(k==0){
                    index=i;
                    return s.substring(0,index);
                }
            }
            
        }
        return s;
}


/1ms faster than 74.96% java solution
public String truncateSentence(String s, int k) {
        int index=0;
        for(int i=0;i<s.length();i++){
            if(s.charAt(i)==' '){
                k--;
            }
            if(k==0){
                index=i;
                return s.substring(0,index);
             }
            
        }
        return s;
    }