C语言实现输入一个字符串后打印出该字符串中字符的所有排列

2025-05-27 0 86

本文实例讲述了C语言实现输入一个字符串后打印出该字符串中字符的所有排列的方法,属于数学里的排列问题。是一个很实用的算法技巧。分享给大家供大家参考。具体实现方法如下:

例如输入字符串abc,则输出由字符a、b、c所能排列出来的所有字符串abc、acb、bac、bca、cab和cba。

C语言实现代码如下:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30
/*

* Copyright (c) 2011 alexingcool. All Rights Reserved.

*/

#include <iostream>

#include <algorithm>

using namespace std;

char array[] = {'a', 'b', 'c'};

const int size = sizeof array / sizeof *array;

void Perm(char *array, int pos, int last)

{

if (pos == last) {

copy(array, array + size, ostream_iterator<char>(cout, ""));

cout << endl;

}

else {

for(int i = pos; i <= last; i++) {

swap(array[i], array[pos]);

Perm(array, pos + 1, last);

swap(array[i], array[pos]);

}

}

}

void main()

{

Perm(array, 0, 2);

}

希望本文所述实例对大家C程序算法设计的学习有所帮助。

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 C语言实现输入一个字符串后打印出该字符串中字符的所有排列 https://www.kuaiidc.com/76143.html

相关文章

发表评论
暂无评论