javascript使用递归算法求两个数字组合功能示例


Posted in Javascript onJanuary 03, 2017

本文实例讲述了javascript使用递归算法求两个数字组合功能。分享给大家供大家参考,具体如下:

// 12 ,3,4 两个数字组合 最后结果 应该是
// 13
// 14
// 23
// 24
// 34
// 这5种 用程序 怎么算出来
// 是求组合的算法
// var arr = [12, 3, 4];
// var len = arr.length;
// var result = [];
// for (var i = 0; i < len; i++) {
// for (var j = i + 1; j < len; j++) {
// for (var k = 0; k < String(arr[i]).length; k++) {
// for (var m = 0; m < String(arr[j]).length; m++) {
// result.push(Number(String(arr[i]).charAt(k)+String(arr[j]).charAt(m)));
// }
// }
// }
// }
// console.log(result);
var arr = [12, 3, 4];
var len = arr.length;
var result = [];
var indexs = {};
function combination(ind, start) {
  start++;
  if (start > 1) {
    return;
  }
  if (!indexs[start]) {
    indexs[start] = 0;
  }
  for (indexs[start] = ind; indexs[start] < len; indexs[start]++) {
    combination(indexs[start] + 1, start);
    if (start == 1) {
      var one = String(arr[indexs[start - 1]]);
      var two = String(arr[indexs[start]]);
      for (var k = 0; k < one.length; k++) {
        for (var m = 0; m < two.length; m++) {
          result.push(Number(one.charAt(k) + two.charAt(m)));
        }
      }
    }
  }
}
combination(0, -1);
console.log(result);

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
JavaScript面向对象之体会[总结]
Nov 13 Javascript
js或jquery实现页面打印可局部打印
Mar 27 Javascript
JQuery Tips相关(1)----关于$.Ready()
Aug 14 Javascript
JavaScript对象之深度克隆介绍
Dec 08 Javascript
javascript简单判断输入内容是否合法的方法
May 11 Javascript
超实用的javascript时间处理总结
Aug 16 Javascript
原生js编写2048小游戏
Mar 17 Javascript
关于页面刷新vuex数据消失问题解决方案
Jul 03 Javascript
bootstrap switch开关组件使用方法详解
Aug 22 Javascript
浅谈JavaScript 代码整洁之道
Oct 23 Javascript
js基础之事件捕获与冒泡原理
Oct 09 Javascript
微信小程序自定义底部弹出框功能
Nov 18 Javascript
jQuery仿写百度百科的目录树
Jan 03 #Javascript
通过BootStrap-select插件 js jQuery控制select属性变化
Jan 03 #Javascript
Vue.js系列之vue-router(上)(3)
Jan 03 #Javascript
JavaScript实现自定义媒体播放器方法介绍
Jan 03 #Javascript
JS求解三元一次方程组值的方法
Jan 03 #Javascript
Vue.js系列之项目结构说明(2)
Jan 03 #Javascript
Vue.js系列之项目搭建(1)
Jan 03 #Javascript
You might like
PHP中date与gmdate的区别及默认时区设置
2014/05/12 PHP
PHP实现连接设备、通讯和发送命令的方法
2015/10/13 PHP
CI框架中类的自动加载问题分析
2016/11/21 PHP
php文件上传类的分享
2017/07/06 PHP
JavaScript多线程的实现方法
2007/05/08 Javascript
jquery的$(document).ready()和onload的加载顺序
2010/05/26 Javascript
基于jquery的气泡提示效果
2010/05/31 Javascript
jquery 学习之二 属性(html()与html(val))
2010/11/25 Javascript
nodejs制作爬虫实现批量下载图片
2017/05/19 NodeJs
使用vue与jquery实时监听用户输入状态的操作代码
2017/09/19 jQuery
快速解决vue-cli不能初始化webpack模板的问题
2018/03/20 Javascript
详解webpack4多入口、多页面项目构建案例
2018/05/25 Javascript
详解JS转换数值函数Number()、parseInt()、parseFloat()
2018/08/24 Javascript
微信小程序使用canvas自适应屏幕画海报并保存图片功能
2019/07/25 Javascript
Vue.use()在new Vue() 之前使用的原因浅析
2019/08/26 Javascript
Vue项目配置跨域访问和代理proxy设置方式
2020/09/08 Javascript
nodejs中内置模块fs,path常见的用法说明
2020/11/07 NodeJs
vue中父子组件的参数传递和应用示例
2021/01/04 Vue.js
Python中利用原始套接字进行网络编程的示例
2015/05/04 Python
对Pandas MultiIndex(多重索引)详解
2018/11/16 Python
解决安装pycharm后不能执行python脚本的问题
2019/01/19 Python
python之拟合的实现
2019/07/19 Python
python 使用递归实现打印一个数字的每一位示例
2020/02/27 Python
Python @property及getter setter原理详解
2020/03/31 Python
python利用蒙版抠图(使用PIL.Image和cv2)输出透明背景图
2020/08/04 Python
使用PyCharm官方中文语言包汉化PyCharm
2020/11/18 Python
美国在线宠物用品商店:Entirely Pets
2017/01/01 全球购物
伦敦剧院门票:From The Box Office
2018/06/30 全球购物
简述Linux文件系统通过i节点把文件的逻辑结构和物理结构转换的工作过程
2012/04/17 面试题
Prototype是怎么扩展DOM的
2014/10/01 面试题
《小猪家的桃花树》教学反思
2014/04/11 职场文书
用人单位终止解除劳动合同证明书
2014/10/06 职场文书
2014年卫生保健工作总结
2014/12/08 职场文书
会议简讯范文
2015/07/20 职场文书
springboot+WebMagic+MyBatis爬虫框架的使用
2021/08/07 Java/Android
asyncio异步编程之Task对象详解
2022/03/13 Python