设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

12下一页
返回列表 发新帖
查看: 9949|回复: 19
打印 上一主题 下一主题

[高0]求最短的代码.

[复制链接]
跳转到指定楼层
1#
发表于 2005-3-19 03:09:00 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
要求用户输入一个字串,电脑输出这个字串的全排序,如:

当用户输入"ABC"时,电脑输出:

ABC

ACB

BAC

BCA

CAB

CBA

当用户输入"ABCD"时,电脑输出:

ABCD

ABDC

ACBD

ACDB

...

最短代码者胜出![em03]
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
17#
发表于 2021-10-10 14:32:38 | 只看该作者
向高手学习
16#
发表于 2008-9-2 11:51:04 | 只看该作者
这个题目用递归最好的办法
15#
发表于 2008-8-2 19:14:46 | 只看该作者
学习[:45] [:45] [:45]
14#
发表于 2005-3-23 23:46:00 | 只看该作者
在几位面前,我现在只能当看客了!
13#
发表于 2005-3-22 23:05:00 | 只看该作者
我不懂,,,,学习学习。。。。
12#
 楼主| 发表于 2005-3-22 03:55:00 | 只看该作者
TRYNEW的方法相当于嵌套N层FOR语句.而我的方法是使用递归.有空的时候,我再出更有趣的题目...[em05]
11#
发表于 2005-3-21 22:24:00 | 只看该作者
果然精妙!不过TRYNEW的方法让我领略到查询的精深,下回生成大量随机文本数据的时候,我会用他的代码。
10#
 楼主| 发表于 2005-3-21 07:48:00 | 只看该作者
插入一个模块,再运行RunMe就可以了.

Dim InPutString As String

Sub GetData(s As String, temp As String)

  Dim i As Integer

  If Len(temp) = Len(InPutString) Then

    MsgBox temp

  Else

    For i = 1 To Len(s)

      GetData Left(s, i - 1) & Right(s, Len(s) - i), temp + Mid(s, i, 1)

    Next i

  End If

End Sub

Sub RunMe()

  InPutString = InputBox("请输入一个字串:", , "ABC")

  GetData InPutString, ""

End Sub





[em05]呵呵,经过代码优化,我只用了11句代码哩!!(不含过程首尾)

[此贴子已经被作者于2005-3-20 23:49:42编辑过]

9#
发表于 2005-3-21 03:43:00 | 只看该作者
可是我连计算也不会,只会瞎猫抓耗子的方法,李老师给个提示看看[em02]
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-5-14 19:25 , Processed in 0.176936 second(s), 35 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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