<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      js回文數的四種判斷方法


      判斷一個整數是否是回文數?;匚臄凳侵刚颍◤淖笙蛴遥┖偷剐颍◤挠蚁蜃螅┳x都是一樣的整數。
      例如:

      121,是回文數。
      1221, 是回文數。
      1234,不是回文數。
      -121,也不是回文數。
      

      一些特殊的情況:

      • 0-9的數字,都可以稱為回文。
      • 不等于0,且尾數是0的數字,都不是回文。
      • 負數都不是回文。

      1. 字符串的轉換

      1.1 簡單點,使用高階函數來完成

      思路: 先將數字轉成字符串A,再經過變成數組,數組反轉,數組變成字符串B三步操作之后,比較字符串A和B,得出結論。

      /**
       * @param {number} x
       * @return {boolean}
       */
      var isPalindrome = function(x) {
          if ( x < 0 ) return false
          let str = '' + x
          return Array.from(str).reverse().join('') === str
      };
      

      1.2 從后往前循環字符串數組

      思路:將數字轉換成字符串A,從后往前循環字符串A,將循環出來的字符拼接成新的字符串B,比較字符串A和B,得出結論。

      /**
       * @param {number} x
       * @return {boolean}
       */
      var isPalindrome = function(x) {
          let str = x + ''
          let newStr = ''
          for(let len = str.length, i = len - 1; i >= 0 ; i--) {
              newStr += str[i]
          }}
          return newStr === str
      };
      

      1.3 以中間數為節點,判斷左右兩邊首尾是否相等

      /**
       * 以中間數為節點,判斷左右兩邊首尾是否相等
       * @param {number} x
       * @return {boolean}
       */
      var isPalindrome = function(x) {
          if ( x < 0 || (x !== 0 && x % 10 === 0)) {
              return false
          } else if ( 0 <= x && x < 10) {
              return true
          }
          x = '' + x
          for(let i = 0 ; i < x.length/2; i++) {
              if (x[i] !== x[x.length - i - 1]) {
                  return false
              }
          }
          return true
      };
      

      2. 數字轉換

      2.1 求模得尾數,除10得整數

      思路: 先判斷一些特殊情況【小于0的、尾數為0的、小于10的正整數】。之后,將整數反轉,反轉前后兩個整數是否相等來判斷是否為回文整數。
      這里的反轉:將整數求模得到尾數,之后每求一次模,都再原數上添加一位(通過*10來得到),這樣就能得到一個反轉的數。
      計算需要求模的次數: 將整數除10,來計算求模的次數。Math.floor() 返回小于或等于一個給定數字的最大整數。

      /**
       * 求模得尾數,除10得整數
       * @param {number} x
       * @return {boolean}
       */
      var isPalindrome = function(x) {
          if ( x < 0 || (x !== 0 && x % 10 === 0)) {
              return false
          } else if ( 0 <= x && x < 10) {
              return true
          }
          let y = x
          let num = 0
          while(x !== 0) {
              num = x % 10 + num * 10
              x = Math.floor(x / 10)
          }
          return y === num
      };
      

      以上即是回文數的判斷方法,如有其它方法,可以補充。

      posted @ 2019-06-03 17:01  weiqinl  閱讀(12268)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 亚洲一区精品视频在线 | 亚洲国产综合精品2020| 国产初高中生粉嫩无套第一次| 女人香蕉久久毛毛片精品| 久久青青草原亚洲AV无码麻豆| 国产精品高清一区二区三区 | 亚洲乱妇熟女爽到高潮的片| 日韩av一区二区不卡在线| 久女女热精品视频在线观看| 国产高清精品在线一区二区| 久久午夜无码免费| 亚洲精品日韩久久精品| 亚洲成色在线综合网站| 亚洲色欲色欲天天天www| 亚洲精品揄拍自拍首页一| а天堂中文最新一区二区三区| 日韩精品二区三区四区| 无码日韩精品一区二区三区免费| 欧美激情一区二区三区成人 | 色婷婷五月综合亚洲小说| 色就色偷拍综合一二三区| 亚洲国产精品综合久久2007| 亚洲二区中文字幕在线| 国产精品一区在线蜜臀| 久久精品无码鲁网中文电影| 国产蜜臀av在线一区二区| 色老头亚洲成人免费影院| 亚洲av午夜福利精品一区二区 | 亚洲人成网7777777国产| 色成年激情久久综合国产| 免费无码成人AV片在线| 欧美黑人大战白嫩在线| 日韩一区二区三在线观看| 午夜福利日本一区二区无码| 高清无打码一区二区三区| 免费观看欧美猛交视频黑人| 天天爽夜夜爱| 丰满人妻无码∧v区视频| 香蕉久久国产精品免| 亚洲av一本二本三本| 男女吃奶做爰猛烈紧视频|