A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 我叫MT 中级黑马   /  2014-2-16 14:10  /  2063 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

编程列出一个字符串的全字符组合情况,原始字符串中没有重复字符
例如:
原始字符串是"abc",打印得到下列所有组合情况
"a" "b" "c"
"ab" "bc" "ca" "ba" "cb" "ac"
"abc" "acb" "bac" "bca" "cab" "cba"

评分

参与人数 1技术分 +1 收起 理由
滔哥 + 1

查看全部评分

5 个回复

倒序浏览
本帖最后由 DWBJ 于 2014-2-16 16:18 编辑

使用char[]进行拆分,然后在组合。或者arrylist也可以,这是大概思路,具体自己慢慢写吧

评分

参与人数 1技术分 +1 收起 理由
滔哥 + 1

查看全部评分

回复 使用道具 举报
DWBJ 发表于 2014-2-16 16:09
使用char[]进行拆分,然后在组合。或者arrylist也可以,这是大概思路,具体自己慢慢写吧 ...

关键就是组合,最好是一个方法功能实现。你说的是一个没有给出思路的思路。

评分

参与人数 1技术分 +1 收起 理由
朱神必 + 1

查看全部评分

回复 使用道具 举报
刘旭升 发表于 2014-2-16 21:48
关键就是组合,最好是一个方法功能实现。你说的是一个没有给出思路的思路。 ...

在实际开发当中,公司里的技术大哥和牛人是不会把代码一个一个给你敲出来的,他也只能告你这么多,你得逼自己,工作了慢慢就知道了,授人鱼,不如授人渔之。

评分

参与人数 1技术分 +1 收起 理由
朱神必 + 1

查看全部评分

回复 使用道具 举报
     楼主的意思是所有结果只能直接通过"abc"来获得吗?我觉得用StringBuilder或者StringBuffer中的方法可以做的到。
     获得前面两行结果很简单,就用到了获得子字符串,和反转两种方法。
     最后一行的结果可以通过存入两个"abc",从"abcabc"中获得子字符串和反转得到。
     不知道这样做对不对。


回复 使用道具 举报
我觉得你可以用charAt()方法经字符串中的每个字符取出来,然后将取出的字符用“+”重新组合即可。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马