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 相关文章推荐
用javascript获取当页面上鼠标光标位置和触发事件的对象的代码
Dec 09 Javascript
js/jquery判断浏览器的方法小结
Sep 02 Javascript
js实现内容显示并使用json传输数据
Mar 16 Javascript
jQuery实现HTML表格单元格的合并功能
Apr 06 Javascript
jQuery插件Echarts实现的渐变色柱状图
Mar 23 jQuery
js实现按座位号抽奖
Apr 05 Javascript
在Js页面通过POST传递参数跳转到新页面详解
Aug 25 Javascript
vue.js项目nginx部署教程
Apr 05 Javascript
webpack-url-loader 解决项目中图片打包路径问题
Feb 15 Javascript
vue cli3.0结合echarts3.0与地图的使用方法示例
Mar 26 Javascript
JavaScript前端页面搜索功能案例【基于jQuery】
Jul 10 jQuery
vue 需求 data中的数据之间的调用操作
Aug 05 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数据库连接类~~做成一个分页类!
2006/11/25 PHP
php printf输出格式使用说明
2010/12/05 PHP
ThinkPHP上使用多说评论插件的方法
2014/10/31 PHP
微信公众平台实现获取用户OpenID的方法
2015/04/15 PHP
Jquery替换已存在于element上的event的方法
2010/03/09 Javascript
JavaScript call apply使用 JavaScript对象的方法绑定到DOM事件后this指向问题
2011/09/28 Javascript
THREE.JS入门教程(2)着色器-上
2013/01/24 Javascript
Javascript中string转date示例代码
2013/11/01 Javascript
textarea不能通过maxlength属性来限制字数的解决方法
2014/09/01 Javascript
JavaScript插件化开发教程 (二)
2015/01/27 Javascript
浅析jquery unbind()方法移除元素绑定的事件
2016/05/24 Javascript
详解js中Json的语法与格式
2016/11/22 Javascript
Canvas实现放射线动画效果
2017/02/15 Javascript
angularjs下拉框空白的解决办法
2017/06/20 Javascript
Bootstrap + AngularJS 实现简单的数据过滤字符查找功能
2017/07/27 Javascript
javascript标准库(js的标准内置对象)总结
2018/05/26 Javascript
vue 优化CDN加速的方法示例
2018/09/19 Javascript
vue根据进入的路由进行原路返回的方法
2018/09/26 Javascript
Vue中通过Vue.extend动态创建实例的方法
2019/08/13 Javascript
vue项目中常见问题及解决方案(推荐)
2019/10/21 Javascript
微信小程序 button样式设置为图片的方法
2020/06/19 Javascript
pyqt4教程之widget使用示例分享
2014/03/07 Python
Python中splitlines()方法的使用简介
2015/05/20 Python
flask入门之文件上传与邮件发送示例
2018/07/18 Python
详解python爬虫系列之初识爬虫
2019/04/06 Python
Django之模板层的实现代码
2019/09/09 Python
Python 矩阵转置的几种方法小结
2019/12/02 Python
Python 操作 MySQL数据库
2020/09/18 Python
Django权限控制的使用
2021/01/07 Python
某/etc/fstab文件中的某行如下: /dev/had5 /mnt/dosdata msdos defaults,usrquota 1 2 请解释其含义
2013/09/18 面试题
给儿子的表扬信
2014/01/15 职场文书
食品安全工作方案
2014/05/07 职场文书
索赔员岗位职责
2015/02/15 职场文书
运动与健康自我评价
2015/03/09 职场文书
个人房屋租赁合同(标准范本)
2019/09/16 职场文书
关于python3 opencv 图像二值化的问题(cv2.adaptiveThreshold函数)
2022/04/04 Python