思路:递归
- 如果左边的数字比右边的数字小,那么就说明左边的那个数字必然要取负值
 - 如果左边的数字比右边的数字大,那么说明是正常的,往上加就行了
 - 每个字符串,判断第一个字符和第二个字符的大小关系,确定第一个字符的正负即可
 - 重复判断的过程,形成递归
 
代码:
class Solution:def __init__(self):self.roman_dict = {'I': 1,'V': 5,'X': 10,'L': 50,'C': 100,'D': 500,'M': 1000}def romanToInt(self, s: str) -> int:if len(s) == 1:return self.roman_dict[s[0]]if self.roman_dict[s[0]] >= self.roman_dict[s[1]]:return self.romanToInt(s[1:]) + self.roman_dict[s[0]]else:return self.romanToInt(s[1:]) - self.roman_dict[s[0]]
