PermMissingElem

PermMissingElem

배열 A는 N개의 다른 정수로 이루어져 있다. 배열의 요소는 [1..(N+1)]의 범위에 속해있다. 이것은 배열 A에 정확히 [1, N+1] 중에 정확히 하나가 빠져있음을 의미한다.
이때 빠진 하나를 찾아야 한다.

OddOccurrencesInArray

OddOccurrencesInArray

배열 A는 홀수들을 담고 있다. 배열의 각 요소들은 같은 값을 같는 짝 요소를 하나씩 갖는데 한 한쌍 혹은 한 요소만 짝을 가지 않게 된다. 이때 짝을 갖지 않는 요소를 return하라.

Max Binary Gap

Max Binary Gap

문제는 다음과 같다.
양의 정수가 있을때 해당 수를 2진수로 변환하였을 때 1사이에 연속적으로 보이는 0을 binary gap이라 한다. binary gap은 하나 이상 혹은 없을 수도 있다.
양의 정수가 주어질 때 가장 긴 길이를 가진 binary gap의 길이를 return하라.
만일 binary gap이 존재하지 않는 다면 0을 return하라.

Zookeeper overview

Zookeeper Overview

zookeeper는 znode라고 불리는 node의 tree구조로 데이터 구조를 유지한다.
각 znode는 데이터와 ACL을 담을 수 있다.

CORS

CORS

CORS는 cross origin resource sharing의 약자로 SOP에 위배되어도 XHR에 의해 resource를 사용할 수 있는 것을 의미한다.

CSRF

CSRF

CSRF란 무엇인가??? Cross Site Request Forgery의 약자이다. 실제 사용자가 의도하지않은 Request를 보내는 방식의 취약점 공격 방식을 의미한다.
XSS와는 다르다. XSS는 사용자를 믿는 점에 대한 취약점을 노리는 반면 CSRF는 사용자의 browser를 신뢰하는 것에 대한 취약점을 노려서 공격하는 방식이다.

python url library

Python url library

disjoint set

Disjoint set

분리 집합. 교집합을 갖지 않는 집합으로 결합 연산을 효율적으로 할 수 있게 해준다.
주요 연산으로는 find(찾기), union(합치기)가 있다.
disjoint set의 root는 set의 정보를 갖게된다.
root는 보통 아무렇게 정한다.

ES6 let keyword

let keyword

ES6에 들어서 생긴 새로운 기능 중 하나는 바로 let이다.
let은 var와 같이 변수를 선언하고자 할 때 사용된다.
다만 var와는 다른 몇 가지 차이점이 존재한다.

netstat status

netstat

machine의 네트워크 상태, 라우팅 테이블 등의 정보를 보여준다. 해당 커맨드에는 여러가지 옵션이 있다. linux기준이다.