해쉬 테이블의 장점 ( 배열과 비교) 해쉬 테이블의 장점을 알기 위해 배열과 비교해보자. 피자의 가격을 검색한다고 하자. 배열에서는 일단 피자를 찾아야 한다. 그러므로 선형 검색을 통해 찾는다. 해쉬 테이블로 찾는다면 pizza를 찾고 바로 price를 찾을 수 있다. 그 어떤 음식의 가격을 찾는다 하더라도 1만큼의 시간이 걸린다. 참고로 해쉬 테이블은 key값, value값이 있다. 시간 복잡도는 배열은 O(n), 해쉬 테이블은 O(1)이다. 배열은 인덱스의 번호를 알아야 아이템에 접근할 수 있다. 해쉬 테이블은 내부에 배열같은 구조가 있음에도 시간복잡도가 O(1)인 이유는 무엇일까? 그 이유는 해쉬 함수가 있기 때문이다. 해쉬 함수는 key값을 숫자로 바꾸어 주는 역할을 한다. 그 숫자가 인덱스가 되..
- 배열 (Array) 배열은 생성할 때 크기를 정해주어야하며 (python, js는 예외) , 랜덤의 위치에 들어간다. 컴퓨터는 배열의 시작 위치를 알고 있고, random access 덕분이다. 배열의 크기와 상관없이 인덱스에서 요소를 읽어내는 속도는 같다. 읽기 배열에서 읽는 것은 매우 빠르게 이루어진다. 수요일을 읽고싶다면 익덱스2번을 요청하면 되는 것이다. 사진 출처 : https://wikidocs.net/206 검색 검색은 읽기와 다르게 시간 복잡도가 O(n)이다. 즉, 최악의 경우 배열을 끝까지 돈 것이다. 예를 들어 '목'을 검색한다고 하자. 우리는 배열에 '목'이 어디에 있는지, 존재하는지도 알 수 없다. 순차검색을 통해 인덱스 0번부터 검색하기 시작한다. 그러고 인덱스 3에서 '목'을..
- 프로세스 사전적 의미 : 컴퓨터에서 연속적으로 실행되고 있는 컴퓨터 프로그램 프로세스는 운영체제로부터 시스템 자원을 할당 받는다. *시스템 자원 : cpu, 주소 공간, 독립된 메모리 영역(code, data, stack, heap) 프로세스는 각각 독립된 메모리 영역을 할당 받는다. 즉, 프로세스끼리 메모리 영역을 공유하지 않는다. 하나의 프로세스에는 최소 한 개의 스레드가 존재한다. (기본 : 메인 스레드) 프로세스는 다른 프로세스의 변수나 자료구조에 접근할 수 없다. 접근하려면 프로세스 간의 통신 해야함. IPC * IPC : inter process communication?, 파일, 소켓, 파이트... 이용 멀티 프로세스는 하나의 프로세스에 오류가 발생해도 서로 영향을 끼치지 않는다. 하지만..
- Total
- Today
- Yesterday
- 터틀그래픽예제
- tweepy
- 사람검출
- JAVA오류해결
- gradleload오류
- database연결
- 오븐시계
- Kkma
- Turtle Graphic
- konlpy
- UnsupportedClassVersionError
- python공부
- 파이썬
- YOLO
- randrange
- yolov8
- 다인승
- 문제풀이
- 10828번
- 에러발생
- baekjoon
- springboot
- 다인승탑승
- randint
- 터틀그래픽 명령어
- 사람수세기
- streamlistener
- SPRING오류해결
- 백준
- 터틀그래픽
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |