huawei机试题目

1/*输入一个字符串,输出这个字符串中单词的字典排序*/

bool cmp(char* a,char* b){
    return strcmp(a,b)<0? true:false;
}
void sortWord(char* str)
{
    vector<char*> myVec;
    int start=0;
    //char* temp=new char[strlen(str)+1];
    int j=0;
    for(int i=0;i<=strlen(str);i++)
    {
        if(*(str+i)==' '||i==strlen(str))
        {
            char* temp=new char[10];
            while(start<i)
            {
                *(temp+j)=*(str+start);
                start++;
                j++;
            }
            *(temp+j)='';
            if(strlen(temp))
            {
                myVec.push_back(temp);
            }
            j=0;
            start=i+1;
        }
    }

    sort(myVec.begin(),myVec.end(),cmp);
    for(int i=0;i<myVec.size();i++)
        cout<<myVec[i]<<endl;

    
    
}
void sortWord1(char* str)
{ 
    char* s=new char[strlen(str)+1];
    for(int i=0;i<strlen(s)+1;i++)
    s[i]=*str++;
    const char *d = " ,*";
    char *p;
    p = strtok(s,d);
    vector<char*> my;
    while(p)
    {
        my.push_back(p);         
        p=strtok(NULL,d);
        
    }
    sort(my.begin(),my.end(),cmp);
    for(int i=0;i<my.size();i++)
        cout<<my[i]<<endl;
}
原文地址:https://www.cnblogs.com/seurain/p/3311497.html