正整数划分的另一种解法
来源:互联网 发布:mac上能玩倩女幽魂吗 编辑:程序博客网 时间:2024/06/04 18:49
Step 1:
n ==1 : return 1
n == 2 : return [1,1],[2]
Step 2:
for n > 2
a.arr.push(n)
b.arr.push([n-1,1])
c.1 get result of recursion(n-2)
c.2 combine n==2 & result => ret
c.3 remove duplicate record in ret
code :
n ==1 : return 1
n == 2 : return [1,1],[2]
Step 2:
for n > 2
a.arr.push(n)
b.arr.push([n-1,1])
c.1 get result of recursion(n-2)
c.2 combine n==2 & result => ret
c.3 remove duplicate record in ret
code :
var splitN = function f(n){if(n == 1) return new Array("1");else if(n == 2)return new Array("1,1","2");else{var tmp = new Array();tmp.push(n);tmp.push((n-1) + ",1");var arr2 = new Array("1,1","2");var r = f(n-2);for(var i = 0;i < r.length ; i++){tmp.push(arr2[0]+"," + r[i]);tmp.push(arr2[1]+"," + r[i]);}//sort eachfor(var i = 0;i < tmp.length; i++)tmp [i] = tmp[i].toString().split(',').sort().join(',');//remove duplicatevar tmp2 = new Array();for(var i = 0;i < tmp.length; i++){if(tmp2.indexOf(tmp[i]) < 0) tmp2.push(tmp[i]);}return tmp2;}}var ret = splitN(6);console.log(ret);
1 0
- 正整数划分的另一种解法
- 正整数划分的另一种解法
- 排列组合的另一种解法
- LCS问题的另一种解法
- 上一篇的另一种解法
- 螺旋队列的另一种解法
- 倍增算法的另一种解法
- 正整数n的划分数
- 正整数n的划分问题
- 计算正整数的划分数
- N 的阶乘的另一种解法
- 迷宫的另一种解法[非递归]
- POJ2528的另一种解法(线段切割)
- POJ2528的另一种解法(线段切割)
- 最长上升自序列的另一种解法。
- 判断是否为素数的另一种解法
- NYOJ 90 —— 求正整数n划分为若干个正整数的划分个数
- 数的划分 不同思路与解法
- IIS请求筛选模块被配置为拒绝超过请求内容长度的请求(上传大文件)
- MongoDB与JAVA CRUD
- Cetc(东北微电子)样片申请与经验
- ubuntu下apach+mysql+php
- Wireshark:The NPF diriver isn't running.
- 正整数划分的另一种解法
- Frameset的使用
- Android彩信备份还原
- OCP-1Z0-051-题目解析-第7题
- 智能差压变送器的正确校准方法
- Linux 线程同步的三种方法
- IOS 动画效果
- 当ListView有Header时,onItemClick里的position不正确
- css+div 实践过程中的问题和思考