首页 > 其他 > 详细

leetcode13 Roman to Integer

时间:2015-01-28 09:55:12      阅读:201      评论:0      收藏:0      [点我收藏+]

      这个题目是把罗马数字转换为整数,比如输入字符串 MCMLXXXIV,输出为整数1984。观测罗马数字的规律,我们得到,其实可以直接相加每个字符代表的整数即可,比如CLIII这个罗马数字对应的整数即为100+50+1+1+1=153。但是,若是两个字符代表一个数字时,我们就需要注意了,比如IV即为5-1=4。因此,我们得到规律,没读入字符串的一个字符,都将它与之后一个字符代表的数字比较,如果前者较小,则将符号改为负,比如,IV,I---1<V---5,因此整数为-1+5=4.

在对字符串的每一个字符处理过程中,我们不能走到最后一个字符的位置,因为每次循环我们都要把当前字符与下一个字符比较来确定符号,如果当前字符为最后一个字符,则会报空指针异常。

leetcode13 Roman to Integer

原文:http://blog.csdn.net/u010691636/article/details/43199781

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!