7.倒转整数

将一个整数颠倒,例123颠倒为321,-123颠倒为-321。int的数值大小可能会溢出,如果溢出则输出为0。

思路:利用double做类型转换,如果溢出再输出0。将数字位存在堆栈里即可以实现反向。注意点在于,当输入为-2147483648时,没法通过绝对值存放在int中。

初始版本

改进:在上面的做法中,我忘记了负数也是同样可以取余的,所以去掉了绝对值的部分。

实际上没有获得速度的提升,但是可读性变好了

思路2:不利用堆栈,利用ans*=10的方法去计算,就将两遍循环放在一遍循环里。

更好的方法(而且可读性比原先高得多)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Lua 5.1 参考手册 by Roberto Ierusalimschy, Luiz Henrique de F...
    苏黎九歌阅读 13,917评论 0 38
  • 1.把二元查找树转变成排序的双向链表 题目: 输入一棵二元查找树,将该二元查找树转换成一个排序的双向链表。 要求不...
    曲终人散Li阅读 3,371评论 0 19
  • 在C语言中,五种基本数据类型存储空间长度的排列顺序是: A)char B)char=int<=float C)ch...
    夏天再来阅读 3,417评论 0 2
  • 唐朝大历末年,洛阳惠林寺有个和尚叫圆观,他擅长田园之艺,也很富有。他除了修佛之外,还精通音律。当时的人都称他富和尚...
    月儿明_0311阅读 983评论 0 3
  • 二地相隔情不移, 诚以吾心换彼心. 期待共处日月见, 悉心照料护吾妻. 今天你回去了,不知道为什么突然之间好不舍,...
    冰冰曼曼阅读 375评论 1 1