package 全排列;
import java.util.ArrayList;
public class Main {
private static ArrayList<String> a = new ArrayList<String>();
public static void main(String[] arg){
String[] ss = {"1","2","3","4","5","6","7","8","9"};
long begin = System.currentTimeMillis();
pailie(0,ss.length-1,ss);
for(int i=0;i<a.size();i++){
System.out.println(a.get(i)+" ");
}
long end = System.currentTimeMillis();
System.out.println((end-begin)/1000f+"秒");
}
public static void pailie(int start,int end,String[] ss){
if(start==end){
String s="";
for(int i=0;i<ss.length;i++){
s+=ss[i];
}
a.add(s);
}
for(int i=start;i<=end;i++){
String index=ss[start];
ss[start]=ss[i];
ss[i]=index;
pailie(start+1,end,ss);
index=ss[start];
ss[start]=ss[i];
ss[i]=index;
}
}
}
分享到:
相关推荐
用递归实现的全排列的源程序,比较精简。当时想了好久
### 基础算法题目精简集合解析 #### 第一章 循环控制 ##### 题目1:输出特定格式的菱形 - **题目描述**:输入一个奇数`n`,输出一个对角线长度为`n`的实心或空心菱形图案。 - **解题思路**: - 使用双重循环结构...
MIPS是一种精简指令集计算机(RISC)架构,广泛用于教学和嵌入式系统。它的指令集设计简洁,易于理解,是学习计算机体系结构和底层编程的理想工具。在MIPS汇编语言中,程序员直接控制硬件资源,如寄存器、内存和算术...
这样的做法精简了代码,提高了程序的可读性。同时,这也向我们展示了C语言中函数的应用以及程序如何通过基本的算术运算来模拟现实世界的问题。 最后,程序4体现了一种常见的算法思想——排序。C语言中,使用if语句...
重叠寄存器技术主要用于解决RISC(精简指令集计算机)系统中,CALL指令的现场保护问题,以保持程序状态并在调用子程序后正确恢复。 4. 为使流水线计算机运行效率高,应保证什么? 连续处理的任务类型应该相同,以...
3. 重叠寄存器技术主要用于解决RISC(精简指令集计算机)系统中因CALL指令的现场保护导致的问题。CALL指令通常用于调用子程序,需要保存现场信息以备恢复,重叠寄存器可以提高这种操作的效率。 4. 使流水计算机运行...
简答题涉及寻址方式在指令中的指明方式及其优缺点、RISC(精简指令集计算机)的优势和不足、全排列网络的含义及其构建方式、中断分级的原因和方法,以及机群系统相对于传统并行处理系统的优点。 最后,简单应用题...
简答题部分如寻址方式的优缺点、RISC(精简指令集计算机)的优缺点、全排列网络的实现方式、中断分级的原因和方法,以及机群系统相对于传统并行处理系统的优点,都是计算机系统结构中的重要概念,需要详细阐述。...
3. 重叠存放器技术常用于RISC(精简指令集)系统中,以解决由于JMP(跳转)指令对流水线的影响,保证指令执行的连续性和效率。 4. 为了使流水计算机运行效率高,连续处理的任务类型应尽可能一致,这样可以更好地...
- **RISC**:精简指令集计算机,通过减少指令数量和简化指令功能来提高执行效率和简化硬件设计。 ### 输入输出与存储体系 - **数据宽度**:I/O设备一次传输的数据量,影响数据传输效率。 - **存储体系**:多层次的...
##### 2.5、素数表精简 对于较大范围内的素数筛选,可以使用更高效的筛法,例如线性筛法。 ##### 2.6、N阶乘最后非0位 这个问题可以通过分析因子的构成来求解。 ##### 2.7、约瑟夫环 约瑟夫环是一种典型的环形...
3. **Pairwise算法剔除无效测试用例**:通过对比每一对测试用例的两两组合,去除那些重复的组合,最终得到一个精简后的测试用例集合。 ##### 二、代码实现 下面是具体的Python代码实现: ```python from ...