找回密码
 加入
搜索
楼主: roczyl

[效率算法] [已解决]一个排列的算法问题。

 火.. [复制链接]
发表于 2010-3-6 21:44:57 | 显示全部楼层
#include <Array.au3>
$begin = TimerInit()
Dim $String = "AB-CD-EF-GH-IJ-KL"
Dim $String_Arr = StringSplit($String, "-")
Dim $Out_Num = Int(2 ^ $String_Arr[0])
Dim $Out_String_Arr[1 + $Out_Num] = [$Out_Num]
Dim $New_String_Arr[1 + $String_Arr[0] * 2] = [$String_Arr[0] * 2]

For $i = 1 To $String_Arr[0]
        $New_String_Arr[$i * 2 - 1] = $String_Arr[$i]
        $New_String_Arr[$i * 2] = StringMid($String_Arr[$i], 2) & StringMid($String_Arr[$i], 1, 1)
Next

$n = 1
For $i = 1 To 2
        For $j = 3 To 4
                For $k = 5 To 6
                        For $c = 7 To 8
                                For $d = 9 To 10
                                        For $e = 11 To 12
                                                $Out_String_Arr[$n] = $New_String_Arr[$i] & "-" & _
                                                                $New_String_Arr[$j] & "-" & _
                                                                $New_String_Arr[$k] & "-" & _
                                                                $New_String_Arr[$c] & "-" & _
                                                                $New_String_Arr[$d] & "-" & _
                                                                $New_String_Arr[$e]
                                                                $n += 1
                                        Next
                                Next
                        Next
                Next
        Next
Next
_ArrayDisplay($Out_String_Arr, "时间(ms):" & TimerDiff($begin))
数学不行,唉~

评分

参与人数 1金钱 +20 收起 理由
afan + 20 学习

查看全部评分

 楼主| 发表于 2010-3-6 21:55:47 | 显示全部楼层
楼上写出代码的同志,我有个人人的PT站邀请码,需要的请联系我。我只有1个。先来先得。
再次感谢!
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-5-10 09:57 , Processed in 0.076692 second(s), 18 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表