Interview Question : Trim multiple consecutive spaces from a string

前端 未结 11 860
情书的邮戳
情书的邮戳 2020-12-08 17:34

This is an interview question Looking for best optimal solution to trim multiple spaces from a string. This operation should be in-place operation.

input  =          


        
11条回答
  •  青春惊慌失措
    2020-12-08 17:57

    Here it is using only stdio:

    #include 
    
    int main(void){
        char str[] = "I    Like    StackOverflow a      lot";
        int i, j = 0, lastSpace = 0;
        for(i = 0;str[i]; i++){
            if(!lastSpace || str[i] != ' '){
                str[j] = str[i];
                j++;
            }
            lastSpace = (str[i] == ' ');
        }
        str[j] = 0;
        puts(str);
        return 0;
    }
    

提交回复
热议问题