Chinaunix首页 | 论坛 | 博客
  • 博客访问: 230515
  • 博文数量: 55
  • 博客积分: 2010
  • 博客等级: 大尉
  • 技术积分: 530
  • 用 户 组: 普通用户
  • 注册时间: 2007-04-22 17:59
文章分类

全部博文(55)

文章存档

2015年(2)

2011年(1)

2010年(1)

2009年(18)

2008年(16)

2007年(17)

我的朋友

分类: C/C++

2008-11-21 14:00:50

1、字符串全排列
inline void Swap(char& a, char& b)
{// 交换a和b
    char temp = a;
    a = b;
    b = temp;
}
void Perm(char list[], int k, int m)
{ //生成list [k:m ]的所有排列方式
    int i;
    if (k == m) {//输出一个排列方式
        for (i = 0; i <= m; i++)
            putchar(list[i]);
        putchar('\n');
    }
    else // list[k:m ]有多个排列方式
        // 递归地产生这些排列方式
        for (i=k; i <= m; i++) {
            Swap (list[k], list[i]);
            Perm (list, k+1, m);
            Swap (list [k], list [i]);
        }
}
阅读(983) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~