【leetcode】判断子序列

 

//递归
bool isSubsequence(char * s, char * t){
    /* 写法 1: */
    return (*s =='\0'? true:*t=='\0'?false:(*s)!=(*t)?isSubsequence(s,t+1):isSubsequence(s+1,t+1));
    /* 写法 2: */
    // if(*s == NULL){
    //     return true;
    // }else if(*t == NULL){
    //     return false;
    // }else{
    //     return (*s == *t? isSubsequence(s+1,t+1):isSubsequence(s,t+1));
    // }
}

 

//正常循环
bool isSubsequence(char * s, char * t){
    while(*s && *t)
    {
        while(*t != '\0' && *s != *t);
            t++;
        if (*s == *t){
            *s++='\0';
            t++;
        }
    }
    return (*s)? false: true;
}

 

posted @ 2020-09-24 18:04  温暖了寂寞  阅读(117)  评论(0编辑  收藏  举报