这个题目中的代码中涉及到了map的使用方法,当查找它的用法时,又涉及到什么是STL。。这些都是学习的过程吧~
STL(Standard Template Library),即标准模板库,学习链接为STL具体介绍。
map是STL中的一种容器,学习链接为map学习。
代码:
class Solution{
public:
int romanToInt(string s){
int sum = 0;
int strlen = s.size();
map<char, int> myMap;
myMap['I'] = 1;
myMap['V'] = 5;
myMap['X'] = 10;
myMap['L'] = 50;
myMap['C'] = 100;
myMap['D'] = 500;
myMap['M'] = 1000;
int i = 0;
while(i < strlen){
while(i < strlen && (myMap[s[i]] >= myMap[s[i+1]])){
sum = sum + myMap[s[i]];
i++;
}
while(i < strlen && (myMap[s[i]] < myMap[s[i+1]])){
sum = sum - myMap[s[i]];
i++;
}
}
return sum;
}
};
学习永无止境啊。。