当前位置: 首页 > news >正文

高县网站建设专业网站公司

高县网站建设,专业网站公司,wordpress ldap集成,优质的南昌网站设计力扣#xff08;LeetCode#xff09;官网 - 全球极客挚爱的技术成长平台备战技术面试#xff1f;力扣提供海量技术面试资源#xff0c;帮助你高效提升编程技能#xff0c;轻松拿下世界 IT 名企 Dream Offer。https://leetcode.cn/problems/roman-to-integer/description/ … 力扣LeetCode官网 - 全球极客挚爱的技术成长平台备战技术面试力扣提供海量技术面试资源帮助你高效提升编程技能轻松拿下世界 IT 名企 Dream Offer。https://leetcode.cn/problems/roman-to-integer/description/ 罗马数字包含以下七种字符: I V X LCD 和 M。 字符 数值 I 1 V 5 X 10 L 50 C 100 D 500 M 1000 例如 罗马数字 2 写做 II 即为两个并列的 1 。12 写做 XII 即为 X  II 。 27 写做  XXVII, 即为 XX  V  II 。 通常情况下罗马数字中小的数字在大的数字的右边。但也存在特例例如 4 不写做 IIII而是 IV。数字 1 在数字 5 的左边所表示的数等于大数 5 减小数 1 得到的数值 4 。同样地数字 9 表示为 IX。这个特殊的规则只适用于以下六种情况 I 可以放在 V (5) 和 X (10) 的左边来表示 4 和 9。X 可以放在 L (50) 和 C (100) 的左边来表示 40 和 90。 C 可以放在 D (500) 和 M (1000) 的左边来表示 400 和 900。 给定一个罗马数字将其转换成整数。 示例 1: 输入: s III 输出: 3 示例 2: 输入: s IV 输出: 4 示例 3: 输入: s IX 输出: 9 示例 4: 输入: s LVIII 输出: 58 解释: L 50, V 5, III 3.示例 5: 输入: s MCMXCIV 输出: 1994 解释: M 1000, CM 900, XC 90, IV 4. 自己的思路 字符 数值 I 1 V 5 X 10 L 50 C 100 D 500 M 1000 根据上面每个字符都对应一个数值我首先想到的是HashMap使用HashMap进行存储key,value其中key为字符value为数值。 然后将字符串s转化为char数组使用for循环遍历。 注意以下三种特殊的情况即可。这里我使用的是减去多加的例如IV本应该减去I的“1”前面不管直接加上所以后面需要减去两份的“1”。 I 可以放在 V (5) 和 X (10) 的左边来表示 4 和 9。X 可以放在 L (50) 和 C (100) 的左边来表示 40 和 90。 C 可以放在 D (500) 和 M (1000) 的左边来表示 400 和 900。 代码 class Solution {public int romanToInt(String s) {HashMapCharacter, Integer hashMap new HashMap();hashMap.put(I, 1);hashMap.put(V, 5);hashMap.put(X, 10);hashMap.put(L, 50);hashMap.put(C, 100);hashMap.put(D, 500);hashMap.put(M, 1000);int res 0;char[] c s.toCharArray();for (int i 0; i c.length; i) {if (hashMap.containsKey(c[i])) {res hashMap.get(c[i]);}if (i ! c.length - 1) {if (c[i] I (c[i 1] V || c[i 1] X)) {res - 2;}if (c[i] X (c[i 1] L || c[i 1] C)) {res - 20;}if (c[i] C (c[i 1] D || c[i 1] M)) {res - 200;}}}return res;} } 思想偏向暴力解法所以时间复杂度较高使用了一次循环和多个if判断。  力扣官方题解 力扣LeetCode官网 - 全球极客挚爱的技术成长平台备战技术面试力扣提供海量技术面试资源帮助你高效提升编程技能轻松拿下世界 IT 名企 Dream Offer。https://leetcode.cn/problems/roman-to-integer/solutions/774992/luo-ma-shu-zi-zhuan-zheng-shu-by-leetcod-w55p/ 思路一样只是我使用的是“多加多减”它使用的是“直接减”。还有一处不同的地方是它利用value进行对比而我使用key进行比较。 代码 class Solution {MapCharacter, Integer symbolValues new HashMapCharacter, Integer() {{put(I, 1);put(V, 5);put(X, 10);put(L, 50);put(C, 100);put(D, 500);put(M, 1000);}};public int romanToInt(String s) {int ans 0;int n s.length();for (int i 0; i n; i) {int value symbolValues.get(s.charAt(i));if (i n - 1 value symbolValues.get(s.charAt(i 1))) {ans - value;} else {ans value;}}return ans;} }
http://www.yutouwan.com/news/57548/

相关文章:

  • 建设电商网站报价提供网站建设方案服务
  • 哪些网站做国际贸易比较好redis wordpress缓存
  • 网站百度搜索不到新桥网站建设培训
  • 找网站做任务领q币wordpress文章发布器
  • 网站正在开发中国内html网站欣赏
  • 国内四大门户网站山东省建筑工程信息网
  • 网站开发的职业规划金华永康网站建设
  • 微动网站建设桂林象鼻山作文400字
  • wordpress建站更新带动器
  • 什么软件可以发布做网站如何注册一家公司要多少钱
  • wordpress换域名中山网站搜索优化
  • 公司网站建设方案详细方案模板安卓小程序制作
  • 深圳罗湖医疗集团网站建设wordpress图片分页插件下载
  • 中国做外贸最好的网站有哪些wordpress iis 中文乱码
  • dede搭建网站教程平顶山专业做网站公司
  • 佛山网站建设zingup中投建设官方网站
  • 怎样建立网站目录结构网页设计案例代码
  • 网站建设有前途做家装的网站有什么区别
  • 石家庄住房建设局网站12306网站花多少钱做的
  • 网站开发有什么好的介绍wordpress qq登录评论
  • 网站快速收录潍坊网站定制 优帮云
  • 郑州网站建设公司有哪些如何在淘宝开网站建设
  • 潍坊专业网站建设怎么收费网站建设ppt模板下载
  • 织梦网站英文版怎么做产品怎么做推广和宣传
  • 中宁建设局网站微信导购网站怎么做视频教学
  • 太原网站制作最新招聘信息网站怎么做适配
  • 卖手表的网站南京医院网站建设方案
  • 网站死链如何处理it运维证书
  • 做旅游网站教程手机赚钱一天400元
  • 长春好的做网站公司排名wordpress一页主题