Fact
- 그때 풀지 못했던 문자열 압축하기 문제를 짝프로그래밍 하면서 풀었다. 처음에 replace로 1 넣은것을 지웠는데 11개 중복될때 문자앞의 11도 다 지워서 replace대신 다른것을 썼다. 그리고 예외 케이스인 “문자열은 제일 앞부터 정해진 길이만큼 잘라야 합니다.” 를 문제 끄트말이에 적어놔서 시간 낭비와 인지력 낭비를 오지게 많이 했다.
- 프로그래머스에 있는 압축 문제를 그전 문자열 압축하기 문제를 풀대의 상대와 다른 사람과 짝 프로그래밍 하면서 풀었다. LZW(Lempel–Ziv–Welch) 압축을 구현하기 였다.
- 예전에 작성했던 프로젝트에 버켓 정책에러와 url에러가 떠서 오늘 다시 고쳤다.
- 오늘 java 문익점 다 갈아 엎고 다시 작성 하고 있었다.
Feelings
- 혹시 벽이랑 이야기 하는 느낌 아시나요? 장난이고 문자열 짝프로 풀면서 나름 재미있었다. “문자열은 제일 앞부터 정해진 길이만큼 잘라야 합니다.” 예외 케이스를 없앴으면 더 재미있었을텐데.
- 프로젝트 그만 터져라 이놈아
- java 객체지향적으로 최대한 짜볼려고 하는데 맞는지 모르겠네.
Findings
-
LZW 압축은 다음 과정을 거친다.
- 길이가 1인 모든 단어를 포함하도록 사전을 초기화한다.
- 사전에서 현재 입력과 일치하는 가장 긴 문자열 w를 찾는다.
- w에 해당하는 사전의 색인 번호를 출력하고, 입력에서 w를 제거한다.
- 입력에서 처리되지 않은 다음 글자가 남아있다면(c), w+c에 해당하는 단어를 사전에 등록한다.
- 단계 2로 돌아간다.
- 객체 지향 프로그래밍에서 멤버 변수(member variable) 또는 멤버 필드는 특정 객체와 연결된 변수의 하나이며, 해당 변수의 모든 메소드(멤버 함수)에 접근이 가능하다.
Future Action
- 모르면 책 고고~