博客
关于我
13.罗马数字转整数
阅读量:442 次
发布时间:2019-03-06

本文共 1004 字,大约阅读时间需要 3 分钟。

13.罗马数字转整数

题目如下:

解法:来自leetcode的大神。

package leetcode.pac13;/** * @auther Summerday *//** * 前值小于后值  总数减去前值 * 前值大于等于后值  总数加上前值 * 最后一个值必然要加上 */public class Roman {    public static void main(String[] args) {        Roman roman = new Roman();        int m = roman.romanToInt("CMXLIV");        System.out.println("m = [" + m + "]");    }    //根据对应的字符获取相应的数值    private int getValue(char ch){        switch(ch){            case'I':return 1;            case'V':return 5;            case'X':return 10;            case'L':return 50;            case'C':return 100;            case'D':return 500;            case'M':return 1000;            default:return 0;        }    }    private int romanToInt(String s){        //sum存取总数值        int sum = 0;        //preNum用以存放前值,初始化为第一个字符代表的数值        int preNum = getValue(s.charAt(0));        //循环便利,从第二个数开始,与前值对比        for (int i = 1; i < s.length(); i++) {        //num存放当前位置上的数值            int num = getValue(s.charAt(i));        //前值小于后值,减去前值,否则将其加上            if(preNum

转载地址:http://luofz.baihongyu.com/

你可能感兴趣的文章
ASP.NET MVC 5 - 视图
查看>>
2017年前端框架、类库、工具大比拼
查看>>
wxWidgets源码分析(1) - App启动过程
查看>>
wxWidgets源码分析(2) - App主循环
查看>>
wxWidgets源码分析(3) - 消息映射表
查看>>
wxWidgets源码分析(4) - 消息处理过程
查看>>
wxWidgets源码分析(5) - 窗口管理
查看>>
wxWidgets源码分析(6) - 窗口关闭过程
查看>>
wxWidgets源码分析(7) - 窗口尺寸
查看>>
wxWidgets源码分析(8) - MVC架构
查看>>
wxWidgets源码分析(9) - wxString
查看>>
机器学习之数据探索——数据特征分析(帕累托分析)
查看>>
Java 对象引用方式 —— 强引用、软引用、弱引用和虚引用
查看>>
Android Bitmap操作问题之Canvas: trying to use a recycled bitmap
查看>>
hadoop学习(四)----windows环境下安装hadoop
查看>>
Mybatis Generator最完整配置详解
查看>>
Tree--二叉树BinarySearchTree
查看>>
Elasticsearch集群升级指引
查看>>
uni-app开发的应用(小程序,app,web等),使用Node+Koa2开发的后端程序接收上传文件的方法
查看>>
webpack打包less与sass
查看>>