Re: [閒聊] 每日leetcode

看板Marginalman作者 (神楽めあ的錢包)時間1年前 (2024/05/03 19:58), 編輯推噓5(503)
留言8則, 6人參與, 1年前最新討論串181/1548 (看更多)
你版剩我不什麼split 只能一個個慢慢比較了 寫出一堆垃圾code 紫砂 思路: 就以'.'為分界去計算version的大小 cnt=cnt*10+(int)(version[i]-'0') 阿如果是leading 0就略過 如果現在的數字>0,就不要掠過0 就算有一個version到底也不要跳出,要去看另外一個version還有沒有值 C code : int compareVersion(char* version1, char* version2) { int idx1=0,idx2=0,n=strlen(version1),m=strlen(version2); while(idx1<n || idx2<m){ int cnt1=0,cnt2=0; while(idx1<n && version1[idx1]!='.'){ if (cnt1>0 || version1[idx1]!='0'){ cnt1=cnt1*10+(int)(version1[idx1]-'0'); } idx1++; } while(idx2<m && version2[idx2]!='.'){ if (cnt2>0 || version2[idx2]!='0'){ cnt2=cnt2*10+(int)(version2[idx2]-'0'); } idx2++; } idx1++; idx2++; if (cnt1>cnt2){ return 1; }else if (cnt2>cnt1){ return -1; } } return 0; } -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 42.72.11.31 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1714737524.A.52D.html

05/03 19:58, 1年前 , 1F
別捲了
05/03 19:58, 1F

05/03 20:00, 1年前 , 2F
我從早上想到現在= =
05/03 20:00, 2F

05/03 20:00, 1年前 , 3F
大師
05/03 20:00, 3F

05/03 20:01, 1年前 , 4F
用C卷 太狠了==
05/03 20:01, 4F

05/03 20:02, 1年前 , 5F
姑姑魯:(
05/03 20:02, 5F

05/03 20:03, 1年前 , 6F
為啥你有時候會換用c寫
05/03 20:03, 6F

05/03 20:07, 1年前 , 7F
別捲了
05/03 20:07, 7F

05/03 20:22, 1年前 , 8F
你是大師
05/03 20:22, 8F
文章代碼(AID): #1cDD5qKj (Marginalman)
討論串 (同標題文章)
文章代碼(AID): #1cDD5qKj (Marginalman)