ip地址复原,复原所有可能性

var restoreIpAddresses = function (s) {
            const len = s.length
            if (len < 4 || len > 12||isNaN(s-0)) return false
            const result = []

            function dfs(start, p, path) {
                if (p == 4) {
                    if (start == len) result.push(path)
                    return
                }

                let c = ''
                for (let i = start; i < start + 3; i++) {
                    c += s[i]
                    if (c > 255) break
                    dfs(i + 1, p + 1, path + c + (p == 3 ? '' : '.'))
                    if (s[start] == 0) break
                }
            }

            dfs(0, 0, '')
            return result
        };
        console.log(restoreIpAddresses('121212121'));

  打印结果:

 

posted @ 2022-05-20 10:48  这个攻城狮不太冷静  阅读(8)  评论(0编辑  收藏  举报