展开全部

package Lianxi.yong2;

import java.util.LinkedList;

import java.util.Scanner;

public class Main {

public static void main(String[] args) {

62616964757a686964616fe58685e5aeb931333335303561A a = new A();

}

}

class A {

Scanner cin = new Scanner(System.in);

int n;

char a[];

public A() {

n = cin.nextInt();

a = new char[n];

for (int i = 0; i

a[i] = (char) (i + 49);

}

next();

}

private void next() {

// TODO Auto-generated method stub

for (char i : a) {

System.out.print(i + " ");

}

System.out.println();

LinkedList is = new LinkedList();

LinkedList js = new LinkedList();

is.add(n - 1);

js.add(n - 1);

//假设我们不模拟递归的情况,就模拟多重循环(这比较简单,先做简单的事情)

//但是事实就是其实只要模拟一个多重循环就可以把问题解决了

while (!is.isEmpty() && is.getLast() > 0) {

while (!js.isEmpty() && js.getLast() >= is.getLast()) {

int j = js.getLast();

int i = is.getLast();

js.removeLast();

js.addLast(j - 1);

if (a[j] > a[i - 1]) {

swap(j, i - 1);

daoxu(i);

for (char c : a) {

System.out.print(c + " ");

}

System.out.println();

is.add(n - 1);

js.add(n - 1);

}

}

js.removeLast();

js.addLast(n - 1);

is.addLast(is.removeLast()-1);

}

}

private void daoxu(int i) {

// TODO Auto-generated method stub

int j = n - 1;

for (int i2 = 0; i + i2

if (i + i2

swap(i + i2, j - i2);

}

}

private void swap(int i, int j) {

// TODO Auto-generated method stub

char temp;

temp = a[i];

a[i] = a[j];

a[j] = temp;

}

}

我不知道你的算法是否正确,但是如果8 9的话是得不到正确的结果的,不过我改写的竟然可以得到正确的结果,真是奇怪

java 全排列非递归算法_我的字典序全排列java程序,怎么改成非递归算法相关推荐

  1. php 登录 非空验证,Ecshop会员注册的Email 电子邮箱改成非必填项 并带非空验证邮箱合法性...

    1.修改模板文件 *去掉*号就好 2.打开  /js/user.js 文件,找到下面JS代码段并修改(大概在466行左右) if (email.length == 0) { msg += email_ ...

  2. C# Windows Phone 8 WP8 开发,将WebClient的DownloadStringCompleted事件改成非同步的awiat方法。...

    C# Windows Phone 8 WP8 开发,将WebClient的DownloadStringCompleted事件改成非同步的awiat方法. 原文:C# Windows Phone 8 W ...

  3. java青蛙过河打字_趣味算法——青蛙过河(JAVA)

    青蛙过河是一个非常有趣的智力游戏,其大意如下: 一条河之间有若干个石块间隔,有两队青蛙在过河,每队有3只青蛙,这些青蛙只能向前移动,不能向后移动,且一次只能有一只青蛙向前移动.在移动过程中,青蛙可以向 ...

  4. java底层原理书籍_阿里面试题:Java中this和super关键字的底层实现原理

    知道的越多,不知道的就越多,业余的像一棵小草! 编辑:业余草 来源:https://www.xttblog.com/?p=5028 B 站:业余草 最近一个粉丝加我说,接到了阿里的面试,问问我阿里会面 ...

  5. java string 常量池_用了这么久Java String,你真的懂字符串常量池吗?

    字符串问题可谓是 Java 中经久不衰的问题,尤其是字符串常量池经常作为面试题出现.可即便是看似简单而又经常被提起的问题,还是有好多同学一知半解,看上去懂了,仔细分析起来却又发现不太明白. 本文以 J ...

  6. java护照号码校验_学无止境之小白学java……第001天

    学习主题:预科阶段 对应视频: http://www.itbaizhan.cn/course/id/18.html 对应作业: 1. 为什么需要学编程,什么样的人可以做程序员? 编程是现实逻辑的表达, ...

  7. java新手练习项目_有哪些好的java项目适合新手练习?

    要想学好java技术,找到高薪工作,不仅要掌握扎实的理论知识,也要有一定的实操能力. 遇到问题多查多问,可以上网站进行搜索,可以加一些交流群,还可以多问学校的老师--另外要学会欣赏他人的代码,向成功者 ...

  8. java面试题成都_成都汇智动力-java面试——多线程面试题

    原标题:成都汇智动力-java面试--多线程面试题 1.多线程有什么用?发挥多核CPU的优势 防止阻塞 便于建模 2.创建线程的方式继承Thread类 实现Runnable接口 至于哪个好,不用说肯定 ...

  9. 网易 java社招面试_十月底—最新网易Java岗社招面试经历分享

    image (面试题+答案领取方式:关注公众号白楠楠获取) 网易面试题 面向对象的特点有哪些? 列举几个java常用的package及其作用 接口和抽象类有什么联系和区别 重载和重写有什么区别 jav ...

  10. java rhino js类_让Rhino JS看Java类

    我正在玩 Rhino,我已经成功使用了stdlib中的Java类,但没有使用我编译的Java代码. 例如,这工作正常: print(new java.util.Date()); 但是使用NanoHTT ...

最新文章

  1. 采用TurboGate邮件网关防止企业邮箱被盗用
  2. linux wget 下载文件 报错 To connect to xxxx, use ‘--no-check-certificate’ 解决方法
  3. P4342 [IOI1998]Polygon
  4. 计算机键盘标注,你所不知道的 Windows 10 小诀窍:万能计算器、虚拟键盘、屏幕截图标注...
  5. 车间生产能耗管控方案_如何给生产车间降温 环保空调的这些方案一定能帮到你...
  6. 机器人动力学与控制_力控制与位置控制的区别
  7. UVA - 10129 Play on Words(欧拉回路)
  8. LSD-SLAM笔记之DepthMap
  9. 强制停用华为桌面,换第三方桌面
  10. 消防信号二总线有没电压_消防主机总线电压偏低 消防二总线详解
  11. 原版安装Win10 1909专业版 64位MSDN镜像2020 05
  12. php抽奖简单源码,php转盘抽奖 完整例子源码(含模拟数据)
  13. 技术管理 - 思维导图(补)
  14. 123456789 中间随机添加 “加减符号” 进行运算结果等于100
  15. 基于 HTML5 WebGL 的 3D 水泥工厂生产线
  16. Dell EMC VxRail
  17. 体验车联网,你选对物联网卡了吗?
  18. 改html更改百度首页背景颜色,百度地图_更改标注颜色
  19. mxGraph绘图区域使用鼠标滚轮实现放大/缩小
  20. 如何临时修改ip地址,永久修改ip地址

热门文章

  1. Linux系统编程(4)——文件与IO之ioctl函数
  2. 3.C#编程指南-字符串
  3. 几个学习git的地方
  4. 20款优秀的可以替代桌面软件的Web应用(转载自JavaEye)
  5. python中求众数_Python实现求众数的三种方法
  6. excel怎么下方方格子_Excel重复值的坑,你踩过几个?
  7. linux服务器配置与管理_一个十多年的系统管理员,忘了如何管理一台服务器
  8. 【视频】时间序列分析:ARIMA-ARCH / GARCH模型分析股票价格
  9. android富文本文件存储,Android富文本
  10. c++ math头文件一些函数使用记录