日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

算法 --- 罗马数字转整数

發(fā)布時間:2023/12/10 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 算法 --- 罗马数字转整数 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.


解體思路:
1.寫一個對象trans用于保存羅馬和數(shù)字之間的映射關(guān)系
2.重點在于當(dāng)數(shù)值小的出現(xiàn)在數(shù)值大的左邊時,會減去該數(shù),出現(xiàn)在右邊時會加上該數(shù),因此需要與后面的進(jìn)行比較
3.在得到s時,首先給它轉(zhuǎn)換成字符串,并在末位加一個0

/*** @param {string} s* @return {number}*/ var romanToInt = function(s) {let trans = {I: 1,V: 5,X: 10,L: 50,C: 100,D: 500,M: 1000,0: 0}s = s + '0'let input = 0;for(let i=0; i < s.length-1; i++){if(trans[s[i]] < trans[s[i+1]]){ // 比較與后面一位的值input += 0 - trans[s[i]] // 比后面小,傳入負(fù)數(shù). 0 - str 是為了將其轉(zhuǎn)換成數(shù)字類型計算} else{input += trans[s[i]] -0 // str -0 是為了將字符串轉(zhuǎn)換成數(shù)字類型}}console.log(input);return input};

總結(jié)

以上是生活随笔為你收集整理的算法 --- 罗马数字转整数的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。