TIL 2022/06/16

김병영·2022년 6월 16일
0

TIL

목록 보기
9/19
post-thumbnail

1일1로그 100일완성 IT지식

018 / 019 / 020

소프트웨어는 컴퓨터가 뭔가 유용한 일을 하게 해주는 일련의 명령어를 의미한다. 하드웨어와 다르게 형체가 없기 때문에 soft라는 이름이 붙게 되었다. 소프트웨어는 연산에 필요한 데이터를 명시하고, 데이터에 대해 수행할 작업을 자세히 설명한다. 컴퓨터에게 작업을 지시할 때에는 사람에게 이야기하는 것과는 다르게 모호하지 않도록 아주 세세히 설명해야 한다. 이를 위해 알고리즘을 사용한다.

알고리즘이란 결과를 정확하게 계한하도록 보장된 일련의 단계로 각 단계를 기본 연산으로 표현하고 연산의 의미는 완전히 명시된다. 그리고 알고리즘은 마지막 단계에서 멈추어야 한다.

선형 알고리즘이란 계산 시간이 데이터의 양에 정비례하거나 선형적으로 비례하는 알고리즘을 말한다. 한 반의 평균 수학 점수를 계산하고자 하면 한 반의 학생수에 비례해서 계산 시간이 늘어날 것을 알 수 있다. 이러한 알고리즘을 선형 알고리즘이라고 한다.

이진 검색 알고리즘은 어떠한 값을 찾기 위해 데이터 그룹을 두 그룹으로 나누고 하나의 그룹만 선택해서 다시 반복하는 과정을 통해 찾는 알고리즘을 말한다. 전화번호부에서 특정 사람의 번호가 있는 페이지를 찾는 과정을 예로 들면, 책의 절반을 펼쳐서 나온 이름을 보고 앞쪽 or 뒷쪽을 선택해서 다시 그 부분의 절반을 펼치고 하는 과정을 통하면 찾게 된다. 이 알고리즘의 계산 시간은 데이터 양의 로그(밑수 2) 값만큼 걸리게 된다. 데이터가 총 1024건이라면 최대 10번의 검색으로 찾을 수 있게 된다.

정규식

정규식 기본 문법

  • 패턴 그대로를 매칭 : 해당 단어를 패턴으로 사용하여 매치되는 영역을 찾는다.

  • 메타문자 및 수량 한정자 사용 : 특별한 의미를 가지는 메타 문자들을 사용하여 보다 폭넓은 패턴을 활용할 수 있다.

  • 그룹 및 look around 기능을 사용 : 패턴의 일부를 그룹으로 묶거나, 특정 패턴의 앞 뒤로 다른 패턴이 오는 조건을 사용

예제사이트 (https://regex101.com/r/cO8lqs/25)


오늘의 한줄
정규식 관련하여 검색하여 몇가지 사용하면서 위 예제사이트에서 여러 실습을 진행하였다.
하지만 내용을 정리해서 쓰기에는 아직 완벽하게 이해가 되지 않은 것 같다...
시간을 내서 TIL이 아니라 따로 정리를 해야겠다.
profile
--- 생각중 ---

0개의 댓글