力扣第93題 復原IP位址

2021-10-08 08:02:19 字數 821 閱讀 8926

給定乙個只包含數字的字串,復原它並返回所有可能的 ip 位址格式。

有效的 ip 位址正好由四個整數(每個整數字於 0 到 255 之間組成),整數之間用 『.』 分隔。

當字串長度小於4或者大於12時,返回

示例1:

輸入: 「25525511135」

輸出: [「255.255.11.135」, 「255.255.111.35」]

使用遞迴求解:將數字依次拆成1位數、2位數和3位數進行組合,當剩餘數字滿足條件時,繼續遞迴

// 參考大佬**,關鍵點:陣列深拷貝,檢查傳入方法字串是否合法

varrestoreipaddresses

=function

(str)

;function

setitem

(str,tmp,result)

for(

let i =

1;i<

4;i++)}

function

check

(str)

(1) 字串中的擷取方法只有類似於陣列slice()複製方法,但是都不會影響到陣列本身;

擷取方法1:slice()

跟陣列slice()方法一樣,slice(startindex,endindex)。複製出來的字串包含start但是不包含endindex

擷取方法2: substring()

提取從 indexstart 到 indexend(不包括)之間的字元

(2)使用遞迴時最好不要使用固定變數,而是將變數作為值傳入函式中,除非時返回值(類似於例子中的tmp)

LeetCode 力扣 93 復原IP位址

給乙個字串,輸出所有的可能的 ip 位址,注意一下,01.1.001.1 類似這種 0 開頭的是非法字串。很類似於剛做過的 91 題,對字串進行劃分。這個其實也是劃分,劃分的次數已經確定了,那就是分為 4 部分。那麼就直接用回溯的思想,第一部分可能是 1 位數,然後進入遞迴。第一部分可能是 2 位數...

力扣刷題筆記 93 復原IP位址 C

今日簽到題,題目如下 給定乙個只包含數字的字串,復原它並返回所有可能的 ip 位址格式。有效的 ip 位址正好由四個整數 每個整數字於 0 到 255 之間組成 整數之間用 分隔。示例 輸入 25525511135 輸出 255.255.11.135 255.255.111.35 想了許久,想不到什...

力扣 復原IP位址

給定乙個只包含數字的字串,復原它並返回所有可能的 ip 位址格式。示例 輸入 25525511135 輸出 255.255.11.135 255.255.111.35 const seg count 4 var ans string segments int func restoreipaddres...