Graphs

Undirected 그래프 Vertex를 연결하는 edge에 순서가 없는 pair로 표현되는 edge들로 이루어져있다. {v1,v2}를 edge라고 표현한다. 예를 들어 v1,v2,v3,v4,v5,v6,v7,v8,v9의 vertex가 있을 때 {v1,v2},{v3,v5},{v4,v7},{v4,v7}의 edge가 있으면 4개의 edge가 있다고 표현한다. 방향이 없기 때문에 v1에서 v2로 가는 edge, v2에서 v1로 가는 edge모두 있다고 본다. 자기 자신에서 자기 자신으로 가는 edge는 없다. V개의 vertext가 있는 방향이 없는 그래프에서 최대한 많은 …
Graphs 더보기

알고리즘; 문자열 해싱 #1

오늘 한 것 알고리즘 교집합 슬라이딩 윈도우 습득한 지식 프로그래머스 Hash; 완주하지 못한 선수 참가자와 완주자의 명단에서 완주하지 못한 참가자를 가져온다. 두 리스트의 교집합을 증명하는 과정에서 완주자와 비교해 참가자를 반환한다 (완주하지 못한 참가자) 소스코드 프로그래머스 Hash; 전화번호 목록 리스트 내 원소에 대해 슬라이딩 윈도우로 비교하고 요구조건에 따라 boolean을 반환한다. 소스코드 프로그래머스 Hash; 위장 첫번째 시도 …
알고리즘; 문자열 해싱 #1 더보기

코딩테스트를 위한 파이썬 정리

알고리즘 스터디를 위해 파이썬에서 코딩테스트를 위해 자주 쓰이는 연산자와 내장함수 관련 내용을 간략하게 정리해봤다. 연산 기존 언어와 파이썬에서 다른 연산자 파이썬에서 나누기는 /와 //가 있다. 전자는 소수점을 표시하고 후자는 정수만을 생성한다. 파이썬의 제곱 연산자는 ** 이다. 그 외 C스타일과 동일. 추가적인 연산관련 내장함수 문자열 혹은 리스팅 + : 문자열의 연결 string[i:j] : 분할 얕은 복사 …
코딩테스트를 위한 파이썬 정리 더보기

LinkedList – Single

연결 리스트의 필요성 1) 일반적으로 배열을 사용하여 데이털르 순차적으로 저장하고, 나열할 수 있다.2) 배열을 사용하는 경우 메모리 공간이 불필요하게 낭비 될 수 있다. 배열 기반 리스트의 특징 배열로 만들었으므로 특정 위치 원소에 즉시 접근 가능하다. 데이터가 들어갈 공간을 미리 메모리에 할당해야 하는 단점이 있다. 원하는 위치로 삽입이나 삭제가 비효율적이다. -> 주소를 당기고 밀어야하기 때문에. 연결리스트의 …
LinkedList – Single 더보기