全排列

来源:互联网 发布:剑灵索隆捏脸数据 编辑:程序博客网 时间:2024/04/28 00:23
template<class Elem>
void SaveResult(Elem src[])
{
    //printf("%s/n",src);
}
//完全特化
template<>
void SaveResult(char src[])
{
    printf("%s/n",src);
}
//全排列
template<class Elem>
void RankAll(Elem src[], int iStart, int iEnd)
{
    if (iStart < iEnd)
    {
        for (int i = iStart; i <= iEnd; ++i)
        {
            swap(src, i, iStart);
            RankAll(src, iStart + 1, iEnd);
            swap(src, i, iStart);
        }        
    }
    else
    {
        SaveResult(src);
    }      
}
原创粉丝点击