JavaScript黑洞数字之运算路线查找算法(递归算法)实例


Posted in Javascript onJanuary 28, 2016

本文实例讲述了JavaScript黑洞数字之运算路线查找算法。分享给大家供大家参考,具体如下:

运行效果截图如下:

JavaScript黑洞数字之运算路线查找算法(递归算法)实例

具体代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <title>运算路线查找算法</title>
  <script type="text/javascript" >
  var BLACKHOLENMB = 6174;
  var count = 0;
  function blackHole(nmb) {
    if (isNaN(nmb) || nmb < 1000 || nmb > 9999) {
      return -1;
    }
    count++;
    var tempArray = (nmb + "").split("");
    var smallNmb = parseInt(tempArray.sort().join(""));
    var bigNmb = parseInt(tempArray.reverse().join(""));
    var d_value = bigNmb - smallNmb;
    log(bigNmb, smallNmb, d_value, count);
    if (d_value != BLACKHOLENMB) {
      return blackHole(d_value);
    } else {
      return count;
    }
  }
  function log(big, small, d_value, count) {
    console.log("step " + count + ":" + big + "-" + small + "=" + d_value);
  }
  console.log(blackHole(2167));
  </script>
</head>
<body>
</body>
</html>

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

Javascript 相关文章推荐
JS实现匀速运动的代码实例
Nov 29 Javascript
JS简单操作select和dropdownlist实例
Nov 26 Javascript
jQuery中:file选择器用法实例
Jan 04 Javascript
javascript自定义右键弹出菜单实现方法
May 25 Javascript
javascript实现复选框全选或反选
Feb 04 Javascript
利用C/C++编写node.js原生模块的方法教程
Jul 07 Javascript
JQuery 获取多个select标签option的text内容(实例)
Sep 07 jQuery
vue.js系列中的vue-fontawesome使用
Feb 10 Javascript
Vue 动态设置路由参数的案例分析
Apr 24 Javascript
Vuex 单状态库与多模块状态库详解
Dec 11 Javascript
js实现上传按钮并显示缩略图小轮子
May 04 Javascript
基于Element封装一个表格组件tableList的使用方法
Jun 29 Javascript
JS+CSS实现DIV层的展开、收缩效果
Jan 28 #Javascript
js+canvas绘制五角星的方法
Jan 28 #Javascript
js+html5实现的自由落体运动效果代码
Jan 28 #Javascript
js判断上传文件后缀名是否合法
Jan 28 #Javascript
Angular中$compile源码分析
Jan 28 #Javascript
实例讲解JS中setTimeout()的用法
Jan 28 #Javascript
jQuery+canvas实现的球体平抛及颜色动态变换效果
Jan 28 #Javascript
You might like
浅析PHP原理之变量分离/引用(Variables Separation)
2013/08/09 PHP
PHP中使用GD库创建圆形饼图的例子
2014/11/19 PHP
WordPress迁移时一些常见问题的解决方法整理
2015/11/24 PHP
PHP实现的mysql读写分离操作示例
2018/05/22 PHP
laravel5.6中的外键约束示例
2019/10/23 PHP
无语,javascript居然支持中文(unicode)编程!
2007/04/12 Javascript
js 多种变量定义(对象直接量,数组直接量和函数直接量)
2010/05/24 Javascript
jQuery中判断一个元素是否为另一个元素的子元素(或者其本身)
2012/03/21 Javascript
鼠标拖动实现DIV排序示例代码
2013/10/14 Javascript
JavaScript中实现PHP的打乱数组函数shuffle实例
2014/10/11 Javascript
JS修改iframe页面背景颜色的方法
2015/04/01 Javascript
javascript实现继承的简单实例
2015/07/26 Javascript
总结Node.js中的一些错误类型
2016/08/15 Javascript
原生JS:Date对象全面解析
2016/09/06 Javascript
JavaScript之DOM插入更新删除_动力节点Java学院整理
2017/07/03 Javascript
在Vue.js中使用Mixins的方法
2017/09/12 Javascript
AngualrJs清除定时器遇到的坑
2017/10/13 Javascript
基于vue 动态加载图片src的解决方法
2018/02/05 Javascript
Vue自定义指令实现checkbox全选功能的方法
2018/02/28 Javascript
JsChart组件使用详解
2018/03/04 Javascript
VUE前后端学习tab写法实例
2019/08/06 Javascript
手写Vue弹窗Modal的实现代码
2019/09/11 Javascript
解决Angularjs异步操作后台请求用$q.all排列先后顺序问题
2019/11/29 Javascript
Python使用urllib模块的urlopen超时问题解决方法
2014/11/08 Python
在Python中通过threading模块定义和调用线程的方法
2016/07/12 Python
python3实现逐字输出的方法
2019/01/23 Python
Pycharm使用远程linux服务器conda/python环境在本地运行的方法(图解))
2019/12/09 Python
pytorch查看torch.Tensor和model是否在CUDA上的实例
2020/01/03 Python
领先的钻石和订婚戒指零售商:Diamonds-USA
2016/12/11 全球购物
加拿大城市本地限时优惠:Buytopia.ca
2018/09/19 全球购物
会计系毕业求职信
2014/08/07 职场文书
自愿离婚协议书范文2014
2014/10/12 职场文书
遇事可以测出您的见识与格局
2019/09/16 职场文书
详解CSS玩转图片Base64编码
2021/05/25 HTML / CSS
你知道哪几种MYSQL的连接查询
2021/06/03 MySQL
详解Golang如何优雅的终止一个服务
2022/03/21 Golang