本帖最后由 沿途小将 于 2014-8-16 13:39 编辑
题目链接如下:点击跳入题目获取帖
借用阳哥的字(谢谢啦!阳哥):
活动目的:练习javaSE知识,算法题。 活动奖励:最高3个技术分 结束时间:2014年8月15日,过期提交可能获取不到技术分! 代码提交要求:将自己的源代码压缩然后提交,提交的时候设置为管理员权限,以其他方式提交的答案无效。上交源码的时候不需要将整个工程项目压缩,只需将用到的源文件压缩即可。 题目类型:JavaSE 排列组合算法。 难易程度:容易
我的解决思路: 第一步:用Scnner的方式建立一个数组。 第二步:敲一个函数实现老师的要求(排列组合)。 因为这里的题目类型是JavaSE排列组合算法,我认为老师还是重点让大家联系第二步的。故我在这只分享我第二步的思路,要得到数组里的全部元素的所有排列组合,每个人有每个人的方法。我的方法是:数组里每个元素都是从array[0],array[1]...array循环了一个,并把每一个新的数组打印,草图如下:
- </blockquote></div>部分代码如下:</span></div><div><span style="font-size: large; line-height: 2.2em;"><div class="blockcode"><blockquote>for (int t = 0; t < i; t++) {
- int a = 0;
- for (int j = 0; j < i; j++) {
- if (j != t) {
- a = arr[j];
- arr[j] = arr[t];
- arr[t] = a;
- }
- for (int n = 0; n < i; n++) {
- System.out.print(arr[n]);
- }
- System.out.println();
- }
- }
复制代码
希望对大家在获取那3技术分时有所帮助(抄袭没分呦,亲!)
|