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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 石国庆 中级黑马   /  2013-3-14 17:21  /  1494 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

如题,,,,,,,,,,,,,,,,

评分

参与人数 1技术分 +1 收起 理由
陈丽莉 + 1 新人加油

查看全部评分

6 个回复

倒序浏览
你的题描述的不是很清楚把?
回复 使用道具 举报
晓谷 发表于 2013-3-14 17:39
你的题描述的不是很清楚把?

就是面试的时候遇到这种题,不是很会,比如经典的,如abc三个字母,输出他们所有的排列组合的可能?就是输出abc,acb,bac,bca,cba.cab.
回复 使用道具 举报
这是一个典型的递归例子
  1. package interview;  
  2.   
  3. import java.util.Arrays;  
  4.   
  5. /**
  6. * @author clydelou
  7. *  
  8. */  
  9. public class Test {  
  10.   
  11.     /**
  12.      * @param args
  13.      */  
  14.     public static void p(int[] a, int index) {  
  15.         if (a == null || index < 0)  
  16.             return;  
  17.         if (index == (a.length - 1))  
  18.             System.out.println(Arrays.toString(a));  
  19.               
  20.         else {  
  21.             for (int i = index; i < a.length; i++) {  
  22.                 int temp = a[i];  
  23.                 a[i] = a[index];  
  24.                 a[index] = temp;  
  25.   
  26.                 p(a, index + 1);  
  27.   
  28.                 temp = a[i];  
  29.                 a[i] = a[index];  
  30.                 a[index] = temp;  
  31.   
  32.             }  
  33.         }  
  34.     }  
  35.   
  36.     public static void main(String[] args) {  
  37.         // TODO Auto-generated method stub  
  38.         int[] a = { 1, 2, 3 };  
  39.         p(a, 0);  
  40.     }  
  41.   
  42. }  
复制代码

评分

参与人数 1技术分 +1 收起 理由
猫腻 + 1

查看全部评分

回复 使用道具 举报
若还有问题,请继续追问;如果没问题了,请将帖子分类改成【已解决】~
回复 使用道具 举报
陈丽莉 发表于 2013-3-15 13:43
若还有问题,请继续追问;如果没问题了,请将帖子分类改成【已解决】~

怎么改帖子的分类啊?
回复 使用道具 举报
石国庆 发表于 2013-3-16 19:57
怎么改帖子的分类啊?

点进自己的帖子,点“编辑”;然后题目的左面有分类的下拉菜单。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马