Programming

    [WEB] REST API 기본

    HTTP 클라이언트와 서버 사이에 이루어지는 요청 및 응답 프로토콜이다. URL을 통해 정보를 요청하면 요청한 정보를 다시 전달해준다. 주로 웹 환경에서 사용 되는 프로토콜로, IOT 등에는 적합하지 않다. API (Application Programming Interface) 다른 애플리케이션에서 사용할 수 있도록, 특정 환경의 기능을 제어할 수 있게 만든 인터페이스이다. 우리가 흔히 접하는 구글지도API 등은 구글지도의 기능을 다른 애플리케이션에서 제어할 수 있게 만든 인터페이스라고 쉽게 생각할 수 있다. REST API (Representational State Transfer) HTTP의 장점을 최대한 활용하기 위해 고안된 REST 아키텍쳐 스타일을 따르는 API이다. 클라이언트와 서버를 명확하게..

    [Git] Git 파해치기 (엘리스SW트랙 1주차)

    [Git] Git 파해치기 (엘리스SW트랙 1주차)

    Git이란? 코딩을 접해본 사람이라면 알고 있는 Github는 Git을 사용한 서비스이다. Git은 로컬에서 동작하여 버전 관리를 해줌으로서 효율적인 협업이 가능하게 하는 시스템이며, Github는 클라우드 서버를 이용한다는 것이 다르다. 규모가 큰 곳의 경우 Git 서버를 자체적으로 구축하여 사용 하곤 한다. Git의 특징 가지치기와 병합 : 여러 가지(branches)를 생성해 독립성을 유지하면서 여러 버전으로 개발이 가능하다. 가볍고 빠르다 : SVN(중앙 시스템)에 비해 깃은 로컬에 프로젝트가 존재하기에 네트워크 속도와 관계 없다. 분산작업 : 사용자들은 각각 복사된 프로젝트에서 독립된 작업이 가능하다. 이들은 모두 전체 코드를 가지고 개발에 집중할 수 있으며 Git에서는 통합관리자를 두어 역할을..

    [JS/알고리즘] 백준 1890번 : DP

    문제 N×N 게임판에 수가 적혀져 있다. 이 게임의 목표는 가장 왼쪽 위 칸에서 가장 오른쪽 아래 칸으로 규칙에 맞게 점프를 해서 가는 것이다. 각 칸에 적혀있는 수는 현재 칸에서 갈 수 있는 거리를 의미한다. 반드시 오른쪽이나 아래쪽으로만 이동해야 한다. 0은 더 이상 진행을 막는 종착점이며, 항상 현재 칸에 적혀있는 수만큼 오른쪽이나 아래로 가야 한다. 한 번 점프를 할 때, 방향을 바꾸면 안 된다. 즉, 한 칸에서 오른쪽으로 점프를 하거나, 아래로 점프를 하는 두 경우만 존재한다. 가장 왼쪽 위 칸에서 가장 오른쪽 아래 칸으로 규칙에 맞게 이동할 수 있는 경로의 개수를 구하는 프로그램을 작성하시오. 첫째 줄에 게임 판의 크기 N (4 ≤ N ≤ 100)이 주어진다. 그 다음 N개 줄에는 각 칸에 적..

    [JS/알고리즘] 백준 17212 : DP

    문제 달나라 토끼들이 사용하는 화폐는 동전뿐이다. 동전의 종류는 1원, 2원, 5원, 7원 이렇게 4종류가 있다. 물건을 사고 동전으로 계산을 하는데 동전의 개수가 최소가 되도록 지불하지 않는 것은 불법이다. 예를 들어, 17원을 지불할 때 7원짜리 동전 1개와 5원짜리 동전 2개로 지불해야 합법이고, 7원짜리 동전 2개와 2원짜리 동전 1개, 1원짜리 동전 1개로 지불해도 17원이 되지만, 총 동전의 개수가 4개가 되어 최소 개수가 아니므로 불법이다. 지불 금액을 입력받아 합법이 되는 동전 개수를 출력으로 내어주는 프로그램을 작성해보자. 첫 번째 줄에 달나라 토끼가 지불해야하는 금액 N(0 ≤ N ≤ 100,000)이 주어진다. 첫 번째 줄에 달나라 토끼가 합법적으로 낼 수 있는 동전의 개수를 출력한다..

    [JS/알고리즘] 카카오 : 문자열 압축 (프로그래머스)

    문제 설명 데이터 처리 전문가가 되고 싶은 "어피치"는 문자열을 압축하는 방법에 대해 공부를 하고 있습니다. 최근에 대량의 데이터 처리를 위한 간단한 비손실 압축 방법에 대해 공부를 하고 있는데, 문자열에서 같은 값이 연속해서 나타나는 것을 그 문자의 개수와 반복되는 값으로 표현하여 더 짧은 문자열로 줄여서 표현하는 알고리즘을 공부하고 있습니다. 간단한 예로 "aabbaccc"의 경우 "2a2ba3c"(문자가 반복되지 않아 한번만 나타난 경우 1은 생략함)와 같이 표현할 수 있는데, 이러한 방식은 반복되는 문자가 적은 경우 압축률이 낮다는 단점이 있습니다. 예를 들면, "abcabcdede"와 같은 문자열은 전혀 압축되지 않습니다. "어피치"는 이러한 단점을 해결하기 위해 문자열을 1개 이상의 단위로 잘..