목록set (3)
N
https://swexpertacademy.com/main/code/problem/problemDetail.do?problemLevel=4&contestProbId=AV7I5fgqEogDFAXB&categoryId=AV7I5fgqEogDFAXB&categoryType=CODE&problemTitle=&orderBy=FIRST_REG_DATETIME&selectCodeLang=ALL&select-1=4&pageSize=10&pageIndex=1 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com set과 BFS를 통한 완전 탐색. 우선 4 x 4 크기의 보드를 입력 받는다. 이후 이 보드를 돌면서 BFS 탐색을 진행..

해시 테이블(Hash Table) 키와 값을 받아 키를 해싱(Hashing)하여 나온 index 값을 저장하는 선형 자료구조. 삽입은 O(1)이며, 키를 알고 있다면 삭제와 탐색도 O(1)로 수행한다. 해시 함수를 통해 키를 특정 범위 내 숫자로 변경한다. 키로 "name"이 주어진다면, 컴퓨터에서는 해시 함수를 통해 1239593로 바꿔 데이터를 저장한다. 즉, 사람의 입장에서는 name이지만 컴퓨터의 입장에서는 1239539가 된다. value가 저장되는 공간을 bucket이라 한다. JavaScript에서 객체(Object)가 해시 테이블에 해당한다. 해시 충돌(Hash Collision) 만약 해시 함수의 결과가 기존에 있던 값과 같게 된다면 충돌이 발생한다. 이를 해결하기 위해서 "분리 연결법"..
문제 비어있는 공집합 S가 주어졌을 때, 아래 연산을 수행하는 프로그램을 작성하시오. add x: S에 x를 추가한다. (1 ≤ x ≤ 20) S에 x가 이미 있는 경우에는 연산을 무시한다. remove x: S에서 x를 제거한다. (1 ≤ x ≤ 20) S에 x가 없는 경우에는 연산을 무시한다. check x: S에 x가 있으면 1을, 없으면 0을 출력한다. (1 ≤ x ≤ 20) toggle x: S에 x가 있으면 x를 제거하고, 없으면 x를 추가한다. (1 ≤ x ≤ 20) all: S를 {1, 2, ..., 20} 으로 바꾼다. empty: S를 공집합으로 바꾼다. 입력 첫째 줄에 수행해야 하는 연산의 수 M (1 ≤ M ≤ 3,000,000)이 주어진다. 둘째 줄부터 M개의 줄에 수행해야 하는 ..