首頁 >web前端 >js教程 >JavaScript黑洞數字運算路線查找演算法(遞歸演算法)實例_javascript技巧

JavaScript黑洞數字運算路線查找演算法(遞歸演算法)實例_javascript技巧

WBOY
WBOY原創
2016-05-16 15:17:211691瀏覽

本文實例講述了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遍歷演算法與技巧總結》及《JavaScript資料結構與演算法技巧總結

希望本文所述對大家JavaScript程式設計有所幫助。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn