七、数组问题
1. 整数转罗马数字
通过两个数组分别存储从1000 、900、500、400、100、90、50、40、10、9、5、4、1对应的罗马数组,同伙比较,用字符串拼接的方式来拼接成罗马数字
2. 罗马数字转整数
先使用字典将1,5,10,50,100,500,1000和对应的罗马值以键值对的方式存起来,然后将字符串转成char类型的数组,遍历数组,找到每一个字符对应的值,依次累加,要注意如果前一个字符小于后一个字符,要进行特殊处理(IV = 4)
3. 整数反转
要注意不可使用辅助栈,将字符串转换成数字的方式,会导致越界
方法: 每次获取数字的最后一个值, 累加到结果数上即可,要记住记得判断越界情况,int.MaxValue和int.MinValue
4. 盛最多水的容器
采用双指针的方法,用一个变量来标记最大值,通过向中间移动左右指针中更小的指针来进行操作。直到两指针碰头,最后返回最大值。