Received an Honorable Mention at the 15th Korean University Student Industrial Engineering Project Competition(2019, KIIE) Introduction Given the substantial upfront costs and ext...
[Prj] Car Recommendation Service using Filtered Review Data
Bayesian Linear Regression Analysis (Insurance Premium Data)
Configuration Import Library library(rstan) library(ggplot2) Apply STAN for analysis Data Preprocessing insdata=read.csv("insurance.csv") insdata$sex <- ifelse(insdata$se...
문자열 검색 알고리즘: 브루트-포스, 보이어-무어, KMP
Pattern Matching 브루트-포스 알고리즘 (Brute-Force Algorithm) 문자열의 가능한 모든 위치에서 패턴을 비교하여 일치하는 부분 탐색 시간 복잡도: $O(nm)$ ($n$: 텍스트의 길이, $m$: 패턴의 길이) Procedure BruteForceMatch(T,P) Input text T of size n and pa...
트리(Tree), 이진 탐색 트리(Binary Search Tree), AVL 트리
이진 탐색 트리 (Binary Search Tree; BST) 이진 탐색 트리의 특성 순서가 있는(정렬되어 있는) $(key, value)$ 쌍으로 구성된 자료구조를 Ordered Map이라고 한다. 키 값에 의해 데이터가 정렬되어 있기 때문에 탐색/삭제에 유리하다. Ordered Map의 일반적인 시간 복잡도는 $O(log\,n)$이다. 정렬된 배...
해시(Hash), 스킵 리스트(Skip list), 세트(Set)
맵 (Map) 맵의 특성 맵: key-value 쌍을 저장하는 자료 구조 key 값에는 중복이 없으며(unique), 각 key는 하나의 entry만을 가짐 search, insert, remove 연산 가능 맵의 활용 대학 정보 시스템 DNS 맵의 구현 단일 연결 리스트 기반 맵의 연산별 최악의 경우 시간 복잡도는 ...
[4] 깃블로그에 댓글 기능 추가(Giscus)
블로그의 가장 큰 장점은 방문자와의 상호작용이 가능하다는 점입니다. Jekyll 기반 GitBlog에 댓글 기능을 제공하는 다양한 서비스가 있지만, 저는 GitHub에서 제공하는 Giscus를 사용하겠습니다. Disqus는 Disqus 계정이 존재해야만 댓글을 달 수 있고, Utterances와 Giscus는 깃허브 계정이 존재해야 댓글을 달 수 있습...
힙(Heap)
힙(Heap)이란? 힙의 특성 Heap-Order: 최댓값/최솟값 탐색에 유리한 반정렬 상태 – 최대 힙: root의 키 값이 최대, $key$(parent)${\geq}key$(child) – 최소 힙: root의 키 값이 최소, $key$(parent)${\leq}key$(child) 완전 이진 트리(Complete Binary Tree)...
[3] GitBlog 포스팅 및 서버 배포
이제 본격적인 블로그 세팅이 완료되었으니, 게시물을 작성해봅시다. 로컬에서 sublime text을 사용해도 되지만, 저는 jekyll에서 제공하는 jekyll admin을 사용하겠습니다. 1. Jekyll Admin 설치 로컬 환경의 Gemfile 파일을 열어서, 최하단에 아래 문구를 추가해주세요. # Install `...
[2] Jekyll Chirpy 테마 커스터마이징
GitBlog 생성을 통해 초기 세팅을 완료했다면, 이제 블로그를 커스터마이징 하겠습니다. 커스터마이징에 활용하는 모든 이미지에 대한 책임은 사용자 본인에게 있으니, 저작권 문제를 꼭 유념하시기 바랍니다. 1. 준비 1.1. 이미지 준비 프로필 이미지와 파비콘으로 사용할 이미지를 찾아줍니다. 저의 경우에는 맥북에서 제공되는 ...
[1] Jekyll 및 GitPages 기반 블로그 생성(Setting)
그동안 참여했던 프로젝트 및 공부한 내용의 정리를 위해 사용할 수 있는 다양한 블로그 플랫폼이 존재합니다. 가장 접근하기 쉬운 네이버 블로그, 개발자들이 흔히 사용하는 티스토리까지 다양하지만, 저는 UI/UX에 있어서 높은 자율성과 확장성을 갖는 GitBlog를 사용하여 포트폴리오를 정리하고자 합니다. Git 초보 입장에서, 초기 세팅부터 많은 난...