일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 코드스테이츠
- 자바스크립트
- useState
- react 기초
- 알고리즘
- 파이썬
- python algorithm
- Zerobase
- algorithm
- typeScript
- context switching
- 파이썬 알고리즘 인터뷰
- 자바
- REACT
- 글또
- execution context
- Operating System
- OS
- codestates
- node.js
- 개발공부
- Computer Science
- java
- 자료구조
- JavaScript
- Python
- 프로그래머스
- 비동기
- 컴퓨터공학
- 운영체제
Archives
- Today
- Total
목록정적 배열 (1)
Back to the Basics
[Python Data structure ] 배열 - insertion operation 시간복잡도 분석
appen는 동적 배열의 끝에 요소를 추가해주는 반면 insertion은 원하는 위치에 요소를 삽입한다. 추가 연산의 시간 복잡도 appen와 마찬가지로 아래 두 경우로 볼 수 있다. 경우1 : 정적 배열에 남는 공간이 있을 때 : 배열 중간에 새로운 요소를 넣을 경우, 가장 뒤의 요소부터 insertion 할 위치까지의 요소들을 하나씩 뒤로 밀어준다. 그 후 빈 공간에 요소를 저장한다. 시간 복잡도 : 최악의 경우 index 0에 요소를 추가할 경우엔 모든 index를 하나씩 뒤로 밀어주게 된다. index로 요소에 접근하는 경우 O(1)이며 n번 반복하므로 O(n)이 된다. 경우 2 : 정적 배열이 찼을 때 : 새로운 배열을 만든 후 기존 데이터를 복사하여 저장한다. 그 후 위와 비슷하게 인덱스를 뒤..
Programming Languages/Python
2021. 10. 12. 00:01