leetcode 93 復原IP位址

2022-03-14 03:08:29 字數 601 閱讀 6890

93. 復原ip位址

這題其實就是91. 解碼方法的乙個變型。解法完全一樣。

dfs(int k, int p, string s, stackcur, listans),k表示當前狀態下剩餘可以搜的個數,p表示還需要搜幾個數,cur是個棧,表示當前已經搜到的數

注意下約束關係,去處理就好了

class solution 

public void dfs(int k, int p, string s, stackcur, listans)

ans.add(tmp.tostring());

return;

}//如果剩下的數太長

if (p * 3 < k) return;

//如果剩下的數太短

if (p > k) return;

for (int i = 1; i <= 3; i++) else if (i == 2 && k > 1 && s.charat(s.length() - k) != '0') else if (i == 3 && k > 2 && s.charat(s.length() - k) != '0') }}

}}

LeetCode93 復原IP位址

首先需要知道ip位址的特性,總共有四段,每段的取值都在 0,255 之間,四段之間用3個 隔開。目標就是如何放置這3個分隔符,使得ip位址是合法的,然後把合法的ip位址記錄下來。方法一 暴力解法。四段的長度都有取1 3的可能性,遍歷所有的情況,記錄合法ip位址。當然類似000,001,00,010這...

leetcode 93 復原IP位址

先判斷字串字串長度是否處於 4,12 然後判斷字串將字串分成從ip位址的第一位進行選擇 ip位址每一位最大為255 最小為0 ip位址的每一位所包含的字串中的位數分別是1 2 3 位 ip位是三位時,要判斷是否大於255 void restore std vector a,std string s,...

LeetCode 93 復原IP位址

給定乙個只包含數字的字串,復原它並返回所有可能的 ip 位址格式。示例 輸入 25525511135 輸出 255.255.11.135 255.255.111.35 只用確認三個點的位置就可以了,所以用三個迴圈來確定點的位置,如果太大了直接continue,如果乙個長度不是1的部分頭部是0,也co...