国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

javascript初探LeetCode之9.Palindrome Number

icyfire / 422人閱讀

摘要:題目分析這是上的第題,難度為,判斷整型數字是否為回文串,需要注意兩點負數都不是回文小于的非負整數都是回文這一題與第題類似,也可以有兩種思路數組法和模十法。所以代碼可以如下改進能被整除的非整數和負數,返回

題目

Determine whether an integer is a palindrome. Do this without extra space.

分析

這是leetcode上的第9題,難度為easy,判斷整型數字是否為回文串,需要注意兩點:

1、負數都不是回文

2、小于10的非負整數都是回文

這一題與第7題類似,也可以有兩種思路:數組法和模十法。由于題目對空間復雜度有要求,所以使用模十法

js實現

模十法:
把給定的x使用模十法逆序一下,與原x的值比較

/**
 * @param {number} x
 * @return {boolean}
 */
var isPalindrome = function(x) {
    if(x<0) return false;
    if(x<10) return true;
    var temp = 0;
    var org = x;//記錄x的初始值
    while(x>9){
        temp = x%10+temp*10
         x = parseInt(x/10)
    }
    temp = temp*10 + x
    return temp == org
};

模十改進版:
上面方法將給的x完全逆序后比較,其實還可以簡化一下。比如整數12321,當上面方法中的while循環進行到當temp=12,x=123時,這時就可以判斷為回文了,此時temp==parseInt(x/10)。再比如12344321,當進行到temp=1234,x=1234時也可以判斷回文了,此時temp==x。所以代碼可以如下改進:

/**
 * @param {number} x
 * @return {boolean}
 */
var isPalindrome = function(x) {
    //能被10整除的非0整數和負數,返回false
    if(x<0||(x%10==0&&x!=0)) return false;
    if(x<10) return true;
    var temp = 0;
    while(x>temp){
        temp = x%10+temp*10
         x = parseInt(x/10)
    }
    return (temp == x)||(parseInt(temp/10)==x)
};

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/88973.html

相關文章

  • leetcode部分題目答案JavaScript

    摘要:自己沒事刷的一些的題目,若有更好的解法,希望能夠一起探討項目地址 自己沒事刷的一些LeetCode的題目,若有更好的解法,希望能夠一起探討 Number Problem Solution Difficulty 204 Count Primes JavaScript Easy 202 Happy Number JavaScript Easy 190 Reverse Bi...

    alphahans 評論0 收藏0
  • leetcode 9 Palindrome Number

    摘要:有一點需要注意的是,負數不算作回文數。而第題當時的方法是,對整數取除的余數,即是當前整數的最后一位。那么它翻轉后一半的數字之后,應該和前半段的數字相等,我們將采用這種思路進行解題。 題目詳情 Determine whether an integer is a palindrome. Do this without extra space.題目要求我們在不占用額外空間的前提下,判斷一個整...

    darkbug 評論0 收藏0
  • [LeetCode] 9. Palindrome Number

    Problem Determine whether an integer is a palindrome. An integer is a palindrome when it reads the same backward as forward. Example 1: Input: 121Output: trueExample 2: Input: -121Output: falseExplana...

    zhaochunqi 評論0 收藏0
  • Leetcode 9 Palindrome Number 回文數字判定

    摘要:難度本題要求判定一個整數是否為回文數字比如都是回文數字但是不是回文數字所有負數都不是回文數字本題還有一個關鍵要求不能使用額外空間我理解這里的額外空間是指堆空間在程序中不能去額外的什么變量更不用說提升空間復雜度直接上的解法解法 Determine whether an integer is a palindrome. Do this without extra space. Some ...

    ningwang 評論0 收藏0
  • July 算法習題 - 字符串2 + Leetcode 8,9

    摘要:判斷一條單向鏈表是不是回文解法可以借助棧,將遍歷到的前半段鏈表節點放入棧,后半段每當遍歷到一個,都要與出棧的節點相比較。如果中間出現不相等的情況,則不是回文。 [July 程序員編程藝術:面試和算法心得題目及習題][1] 字符串轉換成整數 also Leetcode 8 String to Integer (atoi) 題目描述 輸入一個由數字組成的字符串,把它轉換成整...

    timger 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<