
오늘은 정규표현식에 대해 정리해보려고 합니다. 정규표현식을 모르는 사람이 표현식을 보면 매우 난해하게 느껴지지만 알고 사용하면 정말 정말 유용하기 때문에, 겁먹지 마시고 공부해보시길 바랍니다 (문자열 처리에 수십 줄의 코드를 작성해야 할 걸 단 몇 줄 만에 끝낼 수 있거든요!) 정규표현식은 특정한 규칙을 가진 문자열의 집합을 표현하는 데 사용하는 형식 언어 입니다. (위키 참고) 이 정규표현식을 사용하면 특정한 규칙을 만족하는지 유효성 검사에 유용하기 때문에 사용자가 입력한 이메일이나 비밀번호가 우리가 만들어 놓은 패턴 혹은 규칙과 부합하는지 쉽게 확인할 수 있습니다. 우선 정규표현식을 사용하려면 사용방법을 알아야겠죠? 정규 표현식에는 다음과 같은 *메타 문자들이 사용됩니다. * 메타 문자: 원래 그 문..

안녕하세요 오랜만에 알고리즘 풀이를 포스팅해보려 합니다 :) 오늘 포스팅할 문제는 카카오 blind recruitment에 나왔던 '자물쇠와 열쇠' 입니다. programmers.co.kr/learn/courses/30/lessons/60059 코딩테스트 연습 - 자물쇠와 열쇠 [[0, 0, 0], [1, 0, 0], [0, 1, 1]] [[1, 1, 1], [1, 1, 0], [1, 0, 1]] true programmers.co.kr [문제 설명] [제한사항 & 입출력 예] 이 문제는 2차원 배열을 잘 다룰 수 있는지 확인하는 문제로, 2차원 배열의 회전과 이동방법을 구현해서 완전탐색을 수행하면 풀리는 문제입니다. [접근 방식] 1. key가 회전 가능하기 때문에, key를 회전시키기 위한 rotat..

스트링 편집 거리(string edit distance) 알고리즘이란 두 문자열의 유사도를 측정하기 위해 사용되는 알고리즘으로 Levenshtein distance(LD)라고도 합니다. 스트링 편집 거리 알고리즘은 논문, 보고서 등의 표절 검사, DNA 염기 서열의 유사도 검사 등에 사용되어지는데요. 두 문자열의 유사도는 S: 원래 스트링 T: 비교 스트링이라 했을 때 S -> T로 변환하는데 필요한 삽입, 삭제, 대치 연산의 최소 비용(최소 편집 횟수)을 구함으로써 판단합니다. (비용이 작게 나올수록 유사도가 큼) 만약 GUMBO라는 단어와 GAMBOL이라는 단어의 편집 거리를 구해보면, U -> A로 대치 (비용 +1), 맨 마지막에 L 추가 (비용 +1)로 편집 거리는 2가 되게 됩니다. (삽입, ..