java编程题

问题描述

有一个整数 0<n<10 输出n的阶乘项 如 当n = 3 时,如 123 132 231 213 312 321 就是输出n的阶乘项 当n = 4 的时候组成的是四位数 , 5的时候是5位数,其中每位上都是不同的。。不重复 当给定一个n 输出所有项写一个java方法用来实现上述功能

解决方案

public class Test8{ /** * 排列 用1、2、3这三个数字,打印出所有不同的排列, 如:123、132等 * * * @param sb * 符合条件的数字 * @param list * 输入的数字 * @param index * 第几位 * @param k * 已经用过的数组下标 * * @return */ public static Object a2(StringBuffer sb, String[] list, int index, String k) { String[] objs = list; for (int i = 0; i < objs.length; i++) { int ff = 0; // 是否第一次,第一次不需要判断是否用过 if (!k.equals("-1")) { String[] iss = k.split(","); for (int j = 0; j < iss.length; j++) { // 判断该数字是否已经用过了 if (iss[j].equals(i + "")) { ff = 1; break; } } } if (ff == 1) { // 用过的数字不能再用,重新计算 continue; } sb.append(objs[i] + ","); if (list.length - 1 == index) { System.out.println(sb.toString()); } else { a2(sb, objs, ++index, k + "," + i); } --index; sb.delete(sb.length() - 2, sb.length()); } return ""; } public static void main(String[] args) { // 输入的数字 int k = 3; StringBuffer in = new StringBuffer(); for (int i = 1; i <= k; i++) { in.append(i).append(','); } String[] objs = in.toString().split(","); StringBuffer sb = new StringBuffer(); a2(sb, objs, 0, "-1"); }}

时间: 2024-09-11 04:28:35

java编程题的相关文章

两道相似的简单Java编程题,关于文件

问题描述 两道相似的简单Java编程题,关于文件 在A文件夹里有2000个文件,分别是A0.txt,A1.txt,A2.txt,--一直到A1999.txt, 一.我们从中随机选出200个文件复制到B文件夹中: 二.我们系统抽样选出200个文件复制到C文件夹中(比如选择A2.txt,A12.txt,A22.txt,依次加10到A1992.txt). 求大神帮忙!!! 解决方案 我的思路是这样的:首先对于可以用随机函数产生所选的文件之后就是对于随机到的每个文件分别进行复制 对于下面的系统抽样,我不

java编程题桌面设计。。。。。

问题描述 java编程题桌面设计..... 实现文件的加密与解密,关键就在加.解密的算法.程序的设计思想就是通过流从文件中读取数据进行处理,然后写入到新文件中,当解密时通过对应的方式对加密的文件进行处理恢复原文件. (1)文件加密处理算法 for (int i = 0; i < buffer.length; i++) { //循环遍历从流中读取的数组 int ibt = buffer[i]; ibt += 100; //将数组中数据做相加运算 ibt %= 256; buffer[i] = (b

关于java问题-求解java编程题,图片是题目

问题描述 求解java编程题,图片是题目 报错的咋解决,求解,帮帮忙,速度下,题目在下面, 解决方案 flowlayout没有实现listener接口 解决方案二: 定位到红杠报错的位置,使用Eclipse快速提示快捷键ctrl+1(数字1),就能知道错误原因了. 解决方案三: 我可以说我看不清楚吗?

学过日语的朋友麻烦帮我翻一下这个java编程题,谢谢了!

问题描述 大家帮我翻一下这个java题目,我用google翻译出来的看不懂,拜托了 先谢谢大家!!! 问题补充:<div class="quote_title">BlueDreamJerry 写道</div><div class="quote_div"><br /><img src="http://dl.iteye.com/upload/attachment/470691/668f16b0-4e9b-3

JAVA编程题求解

问题描述 庞涓拿到两个整数(这两个整数均在2~99之间)之和,孙膑拿到两个数之积,下面是一段有趣的对话.庞娟说:我不知道两个整数是多少,但我肯定你也不知道.孙膑说:我本来也不知道这两个整数是多少,但既然你这么说,那我现在知道了.庞娟说:哦,那我也知道了.要求输出所有可能的结果,包括这两个整数.这两个整数之和以及这两个整数之积. 解决方案 解决方案二:http://topic.csdn.net/t/20061109/11/5144909.html解决方案三:我做了一下小小的

java考试在线阅卷 编程题阅卷思路

问题描述 java考试在线阅卷 编程题阅卷思路 要做一个在线考试系统,其中有java编程题,想要实现自动阅卷,不知道怎么实现.有知道的可以说下思路或者采用什么技术么? 系统用的jsp和springmvc框架(至少可以抓取运行效果和异常,以及语法错误等) 解决方案 没必要生成class文件,可以动态编译Java源代码,直接在程序中调用Java编译器(JavaCompiler). 解决方案二: java可以动态载入一个class和执行,然后从执行的结果或异常判定就可以了. 解决方案三: java课程

java 基础编程题,急求结果

问题描述 java 基础编程题,急求结果 1,int isVesuvian(int n),如果n是有且仅是两组不同的两个数的平方和,返回1,否则0. 2,int isOneBalanced(int a[]),判读数组是否是平衡数组,开头连续为1的数 + 结尾连续为1的数 = 中间连续不为1的数 结果返回1,否则为0. 3,int closestFibonacci(int n),返回比n小的最大的斐波拉契元素.斐波拉契数列 1 1 2 3 5 8 13 21 34 PS:1 1 2 3 5 8 1

由于本人函授本科,期末JAVA两题编程不会写,楼主只会C。望高手们帮忙一下,明早一大早就要考试了,坐等

问题描述 某商场10年店庆活动,规定消费金额500元以上的部分可以给予95折,消费1000元以上的部分可以给予9折,消费2000元以上的部分可以给予85折.现要求设计一个程序,要求根据用户从键盘输入的商品总价计算出折后价.要求输出格式为:=======================原价:600.00元折后价:595.00元=======================设有一个四位数,它的四位数字分别是ABCD,而其又满足一下条件:ABCD*9=DCBA,试编写一段小程序计算这个四位数究竟是多少

编程题-面试中碰到的java基础题

问题描述 面试中碰到的java基础题 今天面试碰到这么一个问题,想了半天,不知如何回答 P1=V1; P2=V2; method(P1,P2){ P1=V3; P2=V4; } 结果是P1=V1;P2=V4;问P1P2是什么类型的时候才会出现这种情况 解决方案 在传递的时候,如果传递的是原生数据类型,则值不会改变 public class Test { public static void main(String[] args) { int a = 1; int b = 2; swap(a,b)