java实现 整数拆分 希望有个算法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java实现 整数拆分 希望有个算法相关的知识,希望对你有一定的参考价值。
一个整数n(n<=100)可以有多种划分,使其分划得一列整数之和为n.例如:
输入:n=4
要求输入一个整数n,把划分序列输出到文件中。
输出文件result.out,格式内容为:
4
3 1
2 2
2 1 1
1 1 1 1
我做出来了
import java.util.ArrayList;
import java.util.List;
public class Testxxx
public void chaifen(int n)
List list = new ArrayList();
chaifendigui(n,list);
public void chaifendigui(int n, List list)
// TODO Auto-generated method stub
for (int i = 1; i <= n; i++)
System.out.print(i+" ");
if(n>i)
List list2 = new ArrayList();
list2.addAll(list);
list2.add(i);
chaifendigui(n-i,list2);
else
System.out.println();
for (int j = 0; j < list.size()-1; j++)
System.out.print(list.get(j)+" ");
public static void main(String[] args)
Testxxx xx = new Testxxx();
xx.chaifen(10);
追问
你做的不符合题意,http://wenku.baidu.com/view/8b989ce19b89680203d82502.html?st=1 这是我自己写的
追答符不符合不重要,你把分给我就行
参考技术A 递归,内部循环OVER追问
这是个课程设计题目,这样做太简单了吧 而且题目要求拆分数可等于一百,这样的话,运行很慢十几分钟都运行不完
追答现在的机器,比你想象的速度快很多。 100以内的,估计10ms ?? 太慢了,我猜1ms以内
以上是关于java实现 整数拆分 希望有个算法的主要内容,如果未能解决你的问题,请参考以下文章
LeetCode-面试算法经典-Java实现008-String to Integer (atoi) (字符串转成整数)