• 面试题 42 翻转


    (1)经典面试题: 翻转句子中的单词,并将单词的字母顺序翻转, 标点符号和字母一样处理

    void Reverse(char *begin, char *end){
    
        if(begin == NULL || end == NULL)
            return ;
        while(begin < end){
            char tp = *begin;
            *begin = *end;
            *end = tp;
            begin++;
            end--;
        }
    }
    
    char * ReverseSentence(char *sentence){
    
        if(sentence == NULL)
            return NULL;
        char *end = sentence;
        while(*end != ‘0' )end++;
        end--;
        Reverse(sentence, end);
        char *begin = sentence;
        end = sentence;
        while(begin != ''){
            while(*end != ' ' && *end != '') end++;
            Reverse(begin,end-1);
            while(*end == ' ') end++;
            begin = end;
        }
        return sebtence;
    }

    (2)左旋若干个字符

    char * LeftRotateString(char *str, int n){
    
        //if(str == NULL) return str;
        int len = strlen(str);
        if(str == NULL || n <0 || n > len)
            return str;
        
        char *firstbegin = str;
        char *firstend = str + n-1;
        char * secondbegin = str + n;
        char * secondend = str +len -1;
        Reverse(firstbegin, firstend);
        Reverse(secondbegin, secondend);
        Reverse(firstbegin, secondend);
        
        return str;
        
    }
  • 相关阅读:
    多维梯度下降
    梯度下降
    三种评价函数
    Gluon sgd
    Gluon.vision的几类数据集
    Gluon Data API
    Gluon 实现 dropout 丢弃法
    AlexNet 分类 FashionMNIST
    LeNet 分类 FashionMNIST
    LeNet
  • 原文地址:https://www.cnblogs.com/graph/p/3327141.html
Copyright © 2020-2023  润新知