• PHP算法之回文数


    判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。

    示例 1:

    输入: 121
    输出: true
    示例 2:

    输入: -121
    输出: false
    解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。
    示例 3:

    输入: 10
    输出: false
    解释: 从右向左读, 为 01 。因此它不是一个回文数。
    进阶:

    你能不将整数转为字符串来解决这个问题吗?

    来源:力扣(LeetCode)

    1.这个转为字符串处理
    class Solution {

        /**
         * @param Integer $x
         * @return Boolean
         */
        function isPalindrome($x) {
            $len = strlen($x);
            $str = strrev($x);
            if($len > 0 && $str == $x){
                return true;
            }  
            return false;           
        }
    }
    数学计算
    class Solution {

        /**
         * @param Integer $x
         * @return Boolean
         */
        function isPalindrome($x) {
            //边界判断
            if ($x < 0) return false;

            $i = 1;
            while ($x / $i >= 10){
                $i *= 10;
            }
            if($x > 99){
                while ($x > 1) {
                    $left = intval($x / $i);
                    $right = $x % 10;
                    if ($left != $right) return false;
                    $x = ($x % $i) / 10;
                    $i = $i/100;
                }
            }else{
                    $left = intval($x / $i);
                    $right = $x % 10;
                    if ($left != $right) return false;  
            }


            return true;
                         
        }
    }
  • 相关阅读:
    基于JFinal中搭建wopi协议支撑办法
    mysql 增加列
    国王分金币
    口算题卡升级版本
    elasticsearch牛人的日志列表
    牛B的大数据库
    golang --rune
    golang ---rune与byte
    golang学习笔记--接口
    golang学习笔记--函数和方法
  • 原文地址:https://www.cnblogs.com/corvus/p/11965175.html
Copyright © 2020-2023  润新知