Q: 배열, 링크드리스트를 비교하여 설명해주실 수 있을까요?
A:
배열과 연결 리스트 비교
장점
- 배열 : 인덱스를 통한 빠른 접근 가능
- 연결 리스트 : 삽입/삭제 용이
단점
- 배열 :
- 삽입/삭제가 오래 걸림
- 배열 중간에 있는 데이터가 삭제되면, 공간 낭비가 발생함
- 연결 리스트 : 임의 접근이 불가능하여, 처음부터 탐색을 진행해야 함
용도
- 배열 : 빠른 접근이 요구되고, 데이터의 삽입과 삭제가 적을 때
- 연결 리스트 : 삽입과 삭제 연산이 잦고, 검색 빈도가 적을 때
배열(Array) | 연결 리스트(Linked List) |
정적 자료구조 | 동적 자료구조 |
미리 크기를 정해 놓음 | 크기를 정할 필요가 없음 |
연속된 메모리 주소를 할당 받음 | 연속된 메모리 주소를 할당 받지 않음 |
접근, 탐색 용이 | 추가, 삭제 용이 |
index 존재 | Node 존재 |
https://kimmeh1.tistory.com/473
[자료구조] Array와 Linked List의 차이는 무엇일까?
Array와 Linked List가 무엇인지 안다면 그 차이는 쉽게 알 수 있을 것이다. Array 배열은 특정 크기만큼 연속된 메모리 공간에 데이터를 저장하는 자료구조이다. 만약 int형 데이터 3개를 저장할 수 있
kimmeh1.tistory.com
[자료 구조] 배열 & 연결 리스트 (Array & LinkedList)
배열은 입력된 데이터들이 메모리 공간에서 연속적으로 저장되어 있는 자료구조이다.메모리 상에서 연속적으로 저장되어 있는 특징을 갖기 째문에, index를 통한 접근이 용이하다.배열의 크기는
velog.io
https://blacklobster.tistory.com/8
간략 설명! 배열(Array)과 연결 리스트(Linked List)에 대해서 알아보자! - 차이점과 시간복잡도, 활용
예전에 프론트엔드 개발자 기술 면접 준비를 하면서 공부했던 배열(Array)과 연결 리스트(링크드 리스트, Linked List)에 대해서 간략하게 글을 써보려고 합니다. 자료구조 공부하면서 배열과 연결
blacklobster.tistory.com
Q: 우선순위 큐의 시간복잡도는 어떻게 되며 그 이유는 무엇인지 설명해주실 수 있을까요?
A:
배열로 저장한 데이터에서 우선순위가 가장 높은 데이터를 찾는 것은 시간복잡도는 O(N)입니다.
데이터가 정렬되어 있다면 이진 탐색(Binary Search)을 통해 O(logN)도 가능합니다.
https://laboputer.github.io/ps/2017/10/06/priorityqueue/
[자료구조 2] 우선순위 큐(Priority Queue) 이해하기
최댓값 또는 최솟값처럼 우선순위가 높은 데이터를 검색하는 연산만을 빠르게 하기 위해 고안된 자료구조로 우선순위 큐(Priority Queue)를 사용할 수 있습니다. 이 포스팅에서는 우선순위 큐가 무
laboputer.github.io
Priority Queue에서 특정 원소를 찾기 위해서는 전체 노드를 우선순위에 따라 반복적으로 확인해야 한다. 이 때문에, O(N)의 시간 복잡도를 가진다.
[Kotlin] PriorityQueue란 무엇인가? Priority Queue의 삽입, 삭제, 탐색을 위한 시간 복잡도 알아보기
PriorityQueue란? PriorityQueue는 원소들을 우선순위에 따라 저장하고 관리하는 자료구조이다. 각각의 원소는 우선순위의 순서대로 저장된다. PriorityQueue는 일반적으로 min-heap 이나 max-heap을 사용해 구
kotlinworld.com
- 우선순위 큐의 삽입과 삭제는 𝑂(𝑙𝑜𝑔𝑁)의 시간 복잡도를 가집니다
- 따라서 우선순위 큐를 이용한 정렬은 𝑂(𝑁𝑙𝑜𝑔𝑁)의 시간 복잡도를 가진다
🌈 자료구조:: 우선순위 큐(Priority Queue)
우선순위 큐(Queue)의 필요성과 개념에 대해 이해하기
velog.io
- range()
https://www.codingfactory.net/11747
Python / range() / 연속된 수 또는 일정 간격의 연속된 수를 만드는 함수
range() range() 함수는 연속된 수 또는 일정 간격의 연속된 수를 만드는 함수입니다. for 반복문에 자주 사용됩니다. 문법 range(stop) 0부터 시작하여 stop보다 하나 작은 수까지 만듭니다. range(start, stop)
www.codingfactory.net
https://dojang.io/mod/page/view.php?id=1271
COS Pro 2급 파이썬: 15.4 숫자를 감소시키기
for와 range를 사용하면 숫자가 증가하면서 반복합니다. 그럼 숫자를 감소시킬 수는 없을까요? >>> for i in range(10, 0): # range(10, 0)은 동작하지 않음 ... print('Hello, world!', i) ... range(10, 0)과 같
dojang.io
- 각 자릿수 분리해서 더하기
https://go-hard.tistory.com/96
[python] 파이썬 각 자리수 분리, 더하기
파이썬에서 각 자리숫자를 분리하는 방법은 여러가지가 있으며, 소개해드릴 방법은 문자열로 변환 후 분리하는 방법, 10으로 나누어서 수행하는 방법, map함수를 이용하여 자리수 별 더하는 방법
go-hard.tistory.com
'TIL' 카테고리의 다른 글
TIL 081823 (0) | 2023.08.18 |
---|---|
TIL 081723 (0) | 2023.08.17 |
TIL 081423 (0) | 2023.08.14 |
TIL 081123 (0) | 2023.08.11 |
TIL 081023 (0) | 2023.08.10 |