문자열 인코딩 및 디코딩

문자열 목록을 문자열로 인코딩하는 알고리즘을 설계합니다. 그런 다음 인코딩된 문자열은 네트워크를 통해 전송되고 원래 문자열 목록으로 다시 디코딩됩니다.



var encode = function (strs) {
    let res = '';
    for (let char of strs) {
        res += (char.length).toString() + `#` + char;
    }
    return res;
}

var decode = function (s) {
    let res = [];
    for (let i = 0; i < s.length; i++) {
        let j = i;
        while (s[j] != '#') {
            j++;
        }
        let wordLength = parseInt(s.substring(i, j));
        res.push(s.substring(j + 1, j + 1 + wordLength));
        i = j + wordLength;
    }
    return res;
}


시간 복잡도 : O(n)

좋은 웹페이지 즐겨찾기