您的位置:首页 > 编程语言 > Go语言

LeetCode:Palindrome Number(回文判断)

2017-12-07 09:23 309 查看
bool isPalindrome(int x) {

    int temp, temp1;

    temp = 1e+9;

    bool flag = true;

    if(x < 0)

        return false;

    if(x < 10)

        return true;

    while(temp)

    {

        if(x / temp)

        {

            temp1 = 100;

            if((x / temp) != (x % 10))

            {

                flag = false;

                break;

            }

            else

            {

                x = (x - x / temp * temp) / 10;

            }

        }

        else

        {

            temp1 = 10;

        }

        temp = temp / temp1;

        if(flag == false)

            break;

    }

    if(flag == true)

    {

        if(x > 10)

        {

            if((x / 10) != (x % 10))

            {

                flag = false;

            }

        }

    }

    return flag;
}

right answer:

bool isPalindrome(int x) {

    int y,temp;

    if(x < 0)

        return false;

    if(x <10)

        return true;

    temp = x;

    y = 0;

    do{

        y = y*10 + x%10;

        x = x/10;

    }while(x);

    return (y == temp) ? true:false;

}

未考虑情况:1000021
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  algorithm leetcode easy