数列全排列问题----递归实现--JAVA
public class PaiLie {
    /**
     * @param args
     */
    public static void main(String[] args) {
        PaiLie p=new PaiLie();
        int a[]={1,2,3,4};
        p.Perm(a, 0, 3);
    }
    public void Perm(int list[],int k,int m){
        if(k==m){
            for(int i=0;i<=m;i++)
                System.out.print(list[i]);
            System.out.println();
        }else{
            for(int i=k;i<=m;i++){
                Swap(list, k, i);
                Perm(list, k+1, m);
                Swap(list, k, i);
            }
        }
    }
    public void Swap(int[] list,int i,int j){
        int temp=list[i];
        list[i]=list[j];
        list[j]=temp;
    }
}
本题采用递归实现。
数列全排列问题----递归实现--JAVA的更多相关文章
- 全排列算法--递归实现(Java)
		
求一个n阶行列式,一个比较简单的方法就是使用全排列的方法,那么简述以下全排列算法的递归实现. 首先举一个简单的例子说明算法的原理,既然是递归,首先说明一下出口条件.以[1, 2]为例 首先展示一下主要 ...
 - n个整数全排列的递归实现(C++)
		
全排列是很经常使用的一个小算法,以下是n个整数全排列的递归实现,使用的是C++ #include <iostream> using namespace std; int n = 0; vo ...
 - 数组排序、递归——(Java学习笔记二)
		
升序: 选择排序: 选定一个元素,一次和后面的元素相比较,如果选定的元素大雨后面的比较元素,就交换位置 先出现最小值,最后出现最大值. public stat ...
 - 生成n个数的全排列【递归、回溯】
		
下面讨论的是n个互不相同的数形成的不同排列的个数.毕竟,假如n个数当中有相同的数,那n!种排列当中肯定会有一些排列是重复的,这样就是一个不一样的问题了. /*===================== ...
 - 常见递归问题 java
		
//最长公共子序列 import java.util.*;public class Main { public static void main(String[] args){ int ans = m ...
 - 关于单链表的增删改查方法的递归实现(JAVA语言实现)
		
因为在学习数据结构,准备把java的集合框架底层源码,好好的过一遍,所以先按照自己的想法把单链表的类给写出来了; 写该类的目的: 1.练习递归 2.为深入理解java集合框架底层源码打好基础 学习的视 ...
 - JS 从斐波那契数列浅谈递归
		
一.前言 昨晚下班后,经理出于兴趣给我们技术组讲了讲算法相关的东西,全程一脸懵逼的听,中途还给我们出了一道比较有趣的爬楼问题,问题如下: 假设一个人从地面开始爬楼梯,规定一步只能爬一坎或者两坎,人只能 ...
 - 全排列问题(递归&非递归&STL函数)
		
问题描述: 打印输出1-9的所有全排序列,或者打印输出a-d的全排列. 思路分析: 将每个元素放到余下n-1个元素组成的队列最前方,然后对剩余元素进行全排列,依次递归下去. 比如:1 2 3 为例首先 ...
 - 简单的字母全排列问题—递归法和STL法
		
问题描述:求全由小写字母组成的不超过200个字符序列的全排列 如输入序列bbjd,排列结果为: bbdj bbjd bdbj bdjb bjbd bjdb dbbj dbjb djbb jbbd jb ...
 
随机推荐
- JXOJ(基于UOJ)部署日志
			
JXOJ部署日志 前些日子协助cyc.llf两位奆老部署了JXOJ,为方便日后维护我校OJ的同学,写篇日志做记录以日后查看. 一.准备:  在尝试了多个不同OJ之后,我们最终选择了Universal ...
 - Maven下载与环境变量配置
			
前言: Maven 是一个基于 Java 的工具,所以要做的第一件事情就是安装 JDK.如果还未安装 JDK,可以参考Win10下JDK下载与环境变量配置. 项目 要求 JDK Maven 3.3+ ...
 - Unity自定义定时器,模拟协程,脱离MonoBehavior控制
			
using System; using System.Collections.Generic; using System.Timers; public class PETimer { private ...
 - Java JDK下载、安装和验证
			
1.JDK下载地址: http://www.oracle.com/technetwork/java/javase/downloads/index.html,点开链接看到如下图所示的界面: 2.点击上图 ...
 - S3T mongodb GUI
			
下载 cd ~/Downloads wget https://download.studio3t.com/studio-3t/linux/2019.2.1/studio-3t-linux-x64.ta ...
 - mybatis-generator自动生成Mapper.dao.entity
			
在pom.xml中添加依赖 <plugin> <groupId>org.mybatis.generator</groupId> <artifactId> ...
 - Android从启动到程序运行整个过程的整理
			
1Android是基于Linux的一个操作系统,它可以分为五层,下面是它的层次架构图,可以记一下,因为后面应该会总结到SystemServer这些Application Framework层的东西 A ...
 - vue 简单实现父组件向子组件传值,简单来说就是子组件肆意妄为的调用父组件里后台返回的值
			
首先在于父子组件传值的方法很多,本人在这里只是简单描述一下一个组件里面引用了子组件,那么子组件如何才能获取父组件中后台返回的值呢? 首先调用组件相信大家都应该明白了(不明白的自己撸撸文档), < ...
 - elementUi中input输入字符光标在输入一个字符后,光标失去焦点
			
elementUi中input输入字符光标在输入一个字符后,光标就退出,无法输入需要再次聚焦然后输入一个字符又再次退出 首先,用elementUi正常用v-model绑定输入的值是不会造成光标退出的, ...
 - json处理+list.sort()排序
			
#coding:utf-8 """ json是一种轻量级数据交换格式,可以对复杂数据进行表达和存储 规格: 1.数据保存在键值对里 2.键值对之间由逗号分隔 3.花括号用 ...