字符串全排列

//字符串的全排列:递归实现
void Permutation(char* pStr){
    if (pStr == nullptr)
        return;
    Permutation(pStr, pStr);
}
void Permutation(char* pStr, char* pBegin){
    if (*pBegin == '\0')
        printf("%s", pStr);
    else{
        for (char* pCh = pBegin; pCh != '\0'; ++pCh){
            char temp = *pBegin;
            *pBegin = *pCh;
            *pCh = temp;
            
            Permutation(pStr, pBegin + 1);
            
            temp = *pBegin;
            *pBegin = *pCh;
            *pCh = temp;
        }
    }
}
posted @ 2017-08-27 23:14  sold_out  阅读(124)  评论(0编辑  收藏  举报