반응형

시간복잡도 3

[자료구조] 알고리즘

김희성의 개발자 면접 cs 강의/ 스터디 자료형 변수란? 값을 저장할 때 사용하는 식별자 값의 이름과 저장위치의 쌍 저장위치 = 메모리 즉 변수는 값을 저장한 메모리 주소에 대응. 자료형 표현 범위 메모리 연산 속도 int -2,147,483,648 ~ 2,147,483,647 32bit( =4Byte) 가장 빠름 Long(int64) -9223372036854775808 ~ +9223372036854775807 64bit( =8Byte) int 대비 느림 float 정확도 낮음(유효자리수:7) 32bit( =4Byte) int 대비 느림 double 정확도 높음(유효자리수:16) 64bit( =8Byte) int 대비 느림 * 위 자료형 중 대부분 CPU에서는 int 형이 연산속도가 가장 빠르다. 시간..

Backend/CS 2024.03.16

[자료구조] Priority Queue

김희성의 개발자 면접 cs 강의/ 스터디 Priority Queue 비선형 자료구조 Heap이라는 완전 이진 트리로 구현 FIFO Queue와 다르게 데이터 삽입 순서와 관계없이 우선순위가 가장 높은(낮은)데이터 먼저 꺼낸다. 우선순위 높은 데이터부터 꺼냄 : Max Heap(최대힙) (c++) 우선순위 낮은 데이터부터 꺼냄 : Min Heap (최소힙) (java, python) 시간복잡도 i번째 데이터에 접근(Access) : *NONE 데이터의 삽입 : O(logN) 우선순위가 가장 높은(낮은) 데이터에 접근 : O(1)/삭제:O(logN) 데이터가 계속 들어가고 나오는 상태에서 가장 큰 값이나 가장 작은 값을 빠르게 알고싶을 때 사용. import java.util.PriorityQueue; pu..

Backend/CS 2024.03.13

[자료구조] Queue, Deque, Stack

김희성의 개발자 면접 cs 강의/ 스터디 Queue 데이터가 연속적(논리적)으로 저장되어있는 선형 자료구조이다. (메모리상에서 연속적x) FIFO 자료구조 Enqueue (Add) : Queue에 데이터 넣음 Dequeue (Poll) : Queue에서 데이터 꺼냄 시간복잡도 i번째 데이터 접근 O(N) 맨 앞 데이터 접근/삭제 O(1) 맨 뒤 데이터 추가 O(1) x 라는 데이터 있는지 탐색 O(N) Deque ( Double Ended Queue) 한 방향이 아니라 양쪽 끝에서 데이터 추가하거나 꺼낼 수 있는 자료구조 FIFO 구조라고 할 수 없음 시간복잡도 i번째 데이터 접근 O(N) 맨 앞/뒤 데이터 접근/추가/삭제 O(1) x 라는 데이터 있는지 탐색 O(N) queue.addFirst() , ..

Backend/CS 2024.02.22
반응형