PHP教程

php算法-翻转一个32-bit带符号的整数

本文主要是介绍php算法-翻转一个32-bit带符号的整数,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
function reverse($num) {
		//取数32位带符号的最大最小值
		$max = pow(2,31);
		$min = pow(-2,31);
		
		//溢出返回0
		if($num < $min || $num > $max){
			return 0;
		}
		
		//计算数字长度&当值小于0时,长度减1&当值小于0时,新字符串首尾为负号
		$len = strlen($num);
		$newStr = '';
		if($num < 0){
			$len -= 1;
			$newStr = '-';
		}
		
		//将值绝对化并转为字符串
		$num = (string)abs($num);
		
		//翻转字符串
		for($i = $len-1;$i >= 0;$i--){
			$newStr .= $num[$i];
		}
		return (int)$newStr;
	}
	
	echo reverse(-120);

  

这篇关于php算法-翻转一个32-bit带符号的整数的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!