<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                >[success] # 回文數 ~~~ 判斷一個整數是否是回文數。回文數是指正序(從左向右)和倒序(從右向左)讀都是一樣的整數。 注意 負數不是回文數 ~~~ >[danger] ##### python解題 * 思路 ~~~ 1.121 發現規律,每一個字符串收尾一致就是回文數 2.利用數字長度的一半循環,則左側項都為i,右側項都為len-1-i ~~~ * 個人解法 ~~~ class Solution: def isPalindrome(self, x): """ :type x: int :rtype: bool """ if x<0: return False else: x = str(x) if x==0: return True for i in range(0,int(len(x)/2)): if x[i]!=x[len(x)-i-1]: return False return True ~~~ * 優秀解法 ~~~ 1.任何數的余數10,是這個數的末尾數 例如 121%10 =1 2.數字 前半段 和 數字 后半段的數一致 為 回文數 例如 11211 也就是11=11 注: 注釋一:結尾是0的數絕對不是回文數,但是0是回文數 注釋二:例如121 x最后會變成1 而revertedNumber 變成12, 6556 x最后變成56 revertedNumber 變成56, 6565 x最后 變成6 revertedNumber565,如果是奇數個數 或者是偶數非回文函數的數,會多執行一次,來終止循環 如果是偶數的回文函數,就會正好前后一致終止循環 注釋三:面對非回文數,和奇數回文數會比,實際多一個中位數,中位數是最后一位,去掉末尾中位數,去比較實際兩者是否一致 ~~~ ~~~ class Solution: def isPalindrome(self, x): """ :type x: int :rtype: bool """ # 注釋一 if (x<0 or (x%10 == 0 and x!=0)): return False else: revertedNumber = 0 # 注釋二 while x> revertedNumber: revertedNumber = revertedNumber*10 + x%10 x = x//10 # 注釋三 return x == revertedNumber or x == revertedNumber//10 ~~~ * python 解法 ~~~ class Solution: def isPalindrome(self, x): """ :type x: int :rtype: bool """ if x < 0: return False else: return int(str(x)[::-1]) == x ~~~ * js 最快解法 ![](https://box.kancloud.cn/2f3df7cfab52c6d963cf35f6fe827371_859x504.png) >[danger] ##### js解題 * 最常見的方法,循環當前長度的一半,用首尾值依次比較 ~~~ /** * @param {number} x * @return {boolean} */ var isPalindrome = function(x) { if(x<0) return false if(x===0) return true var x = x.toString() for(var i =0;i<parseInt(x.length/2);i++){ if(x[i]!=x[x.length-i-1]) return false } return true }; ~~~ * 跟第一種思路一樣實現不同 ~~~ /** * @param {number} x * @return {boolean} */ var isPalindrome = function(x) { if(x<0) return false var s = x.toString() var i =0 ,j=s.length-1 while(i<=j){ if(s[i]==s[j]){ i++ j-- }else{ return false } } return true }; ~~~ * 利用反轉整數的思想去比較 ~~~ var isPalindrome = function(x) { if(x<0||x%10===0 &&x!=0){ return false } return x.toString().split('').reverse().join("") == x }; ~~~ * 最快解法[關于trunc方法說明]([https://blog.csdn.net/qq\_37016928/article/details/80667247](https://blog.csdn.net/qq_37016928/article/details/80667247)) ~~~ /** * @param {number} x * @return {boolean} */ var isPalindrome = function(x) { if (x < 0) { return false; } let len = 1; while (x / len > 10) { len *= 10; } while (x > 0) { let left = Math.trunc(x / len); let right = x % 10; if (left !== right) { return false; } else { x = Math.trunc((x % len) / 10); len /= 100; } } return true; }; ~~~
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看