结果:
Enter a word:
ABCD
第 0趟2 返回
1 ABCD -->ABDC
第 1趟2 返回
2 ABDC -->ABCD
第 0趟3 返回
-->ACDB
第 0趟2 返回
3 ACDB -->ACBD
第 1趟2 返回
4 ACBD -->ACDB
第 1趟3 返回
-->ADBC
第 0趟2 返回
5 ADBC -->ADCB
第 1趟2 返回
6 ADCB
-->ADBC
第 2趟3 返回
-->ABCD
第 0趟4 返回
-->BCDA
第 0趟2 返回
7 BCDA -->BCAD
第 1趟2 返回
8 BCAD -->BCDA
第 0趟3 返回
-->BDAC
第 0趟2 返回
9 BDAC -->BDCA
第 1趟2 返回
10 BDCA -->BDAC
第 1趟3 返回
-->BACD
第 0趟2 返回
11 BACD -->BADC
第 1趟2 返回
12 BADC
-->BACD
第 2趟3 返回
-->BCDA
第 1趟4 返回
-->CDAB
第 0趟2 返回
13 CDAB -->CDBA
第 1趟2 返回
14 CDBA -->CDAB
第 0趟3 返回
-->CABD
第 0趟2 返回
15 CABD -->CADB
第 1趟2 返回
16 CADB -->CABD
第 1趟3 返回
-->CBDA
第 0趟2 返回
17 CBDA -->CBAD
第 1趟2 返回
18 CBAD
-->CBDA
第 2趟3 返回
-->CDAB
第 2趟4 返回
-->DABC
第 0趟2 返回
19 DABC -->DACB
第 1趟2 返回
20 DACB -->DABC
第 0趟3 返回
-->DBCA
第 0趟2 返回
21 DBCA -->DBAC
第 1趟2 返回
22 DBAC -->DBCA
第 1趟3 返回
-->DCAB
第 0趟2 返回
23 DCAB -->DCBA
第 1趟2 返回
24 DCBA
-->DCAB
第 2趟3 返回
-->DABC
第 3趟4 返回
-->ABCD
不相同个数:24 ,列表如下:
1、 ABCD 2、 ABDC 3、 ACDB 4、 ACBD 5、 ADBC 6、 ADCB
7、 BCDA 8、 BCAD 9、 BDAC 10、 BDCA 11、 BACD 12、 BADC
13、 CDAB 14、 CDBA 15、 CABD 16、 CADB 17、 CBDA 18、 CBAD
19、 DABC 20、 DACB 21、 DBCA 22、 DBAC 23、 DCAB 24、 DCBA
相同个数:0 ,列表如下:
次数统计:
1、 DABC=1 2、 CADB=1 3、 DBAC=1 4、 BCAD=1 5、 BACD=1 6、 ABCD=1
7、 ABDC=1 8、 DCBA=1 9、 ADBC=1 10、 ADCB=1 11、 DACB=1 12、 CBAD=1
13、 CBDA=1 14、 ACBD=1 15、 DCAB=1 16、 CDBA=1 17、 CDAB=1 18、 ACDB=1
19、 DBCA=1 20、 BDAC=1 21、 CABD=1 22、 BADC=1 23、 BCDA=1 24、 BDCA=1
Enter a word:
程序执行,数组变化情况描述如下:
Enter a word: ABCD
4
0 4 9-->BCDA --10
3
0 3 2 -->ACDB --3
2
0 2 :【1 ABCD】-->ABDC --1
1 2 :【2 ABDC】-->ABCD --2
1 3 5 -->ABDC --6
2
0 2 :【3 ACBD】-->ACDB --4
1 2 :【4 ACDB】-->ACBD --5
2 3 8-->ABCD --9
2
0 2 :【5 ABDC】-->ADCB --7
1 2 :【6 ADCB】-->ADBC --8
接下来 1 4,2 4 ,3 4类似上面循环
Enter a word: ABCDE
5
0 5 40 ABCDE--> BCDEA --41
4
0 4 9 -->ACDEB --10
3
0 3 2 -->ABDEC --3
2
0 2:1 ABCDE--> ABCED --1
1 2:2 ABCED --> ABCDE --2
1 3 5 -->ABECD --6
2
0 2:3 ABDEC --> ABDCE --4
1 2:4 ABDCE --> ABDEC --5
2 3 8 -->ABCDE --9
2
0 2:5 ABECD --> ABEDC --7
1 2:6 ABEDC --> ABECD --8
1 4 19 -->ADEBC --20
3
0 3 12 -->ACEBD --13
2
0 2: 7 ACDEB -->ACDBE --11
1 2: 8 ACDBE -->ACDEB --12
1 3 15-->ACBDE --16
2
0 2: 9 ACEBD -->ACEDB --14
1 2: 10 ACEDB -->ACEBD --15
2 3 18-->ACDEB --19
2
0 2: 11 ACBDE -->ACBED --17
1 2: 12 ACBED -->ACBDE --18
2 4 29 -->AEBCD --30
3
0 3 22-->ADBCE --23
2
0 2: 13 ADEBC -->ADECB --21
1 2: 14 ADECB -->ADEBC --22
1 3 25 -->ADCEB --26
2
0 2: 15 ADBCE -->ADBEC --24
1 2: 16 ADBEC -->ADBCE --25
2 3 28 -->ADEBC --29
2
0 2: 17 ADCEB -->ADCBE --27
1 2: 18 ADCBE -->ADCEB --28
3 4 39 AEBCD --> ABCDE --40
3
0 3 32 -->AECDB --33
2
0 2: 19 AEBCD -->AEBDC --31
1 2: 20 AEBDC -->AEBCD --32
1 3 35 -->AEDBC --36
2
0 2: 21 AECDB -->AECBD --34
1 2: 22 AECBD -->AECDB --35
2 3 38 -->AEBCD --39
2
0 2: 23 AEDBC -->AEDCB --37
1 2: 24 AEDCB -->AEDBC --38
接下来 1 5,2 5 ,3 5, 4 5类似上面循环 。
每一趟for循环,根据后面圆号中的顺序查看数组变化。