整数反转算法(php实现)

来源:互联网 发布:图片剪切软件下载 编辑:程序博客网 时间:2024/05/21 18:44

要求:

1.       函数名reverse_integer,参数为一个整数int,返回值也是int;

2.       函数功能将传入的整数参数反序;如传入12,返回值就是21;

3.       如果使用脚本语言,不能利用语言的特性,来实现这个功能;要纯粹靠编码来实现,不能借助任何外界的支持;

比如不能用python这样实现

def reverse_integer(num):

i = int(num)

s = str(i)[::-1]

return int(s)

         这里的整数转换字符串,和反转字符串,字符串转换整数都是依赖于python的语法特性实现的。

4.       尽可能的高效;


/** * @param   int * @return  int */function reverse_integer($num){    if(!is_int($num)) return 'error in type';    $remainder = 0;//余数    $res = 0;    while($num > 9){        $remainder = $num%10; //获取余数        $num = ($num-$remainder)/10;//初始化传进来的变量        $res = $res*10+$remainder;    }    return $res*10+$num;} echo reverse_integer(10102);


没有考虑最大int,若需要考虑最大int限制可以用下PHP_INT_MAX 做下判断   


忽略了一点....负数也是int类型   php7已经有了PHP_INT_MIN最小int值,如果用的不是php7版本可以采用绝对值


0 0