배열 (Array)
메모리의 연속된 공간에 데이터를 저장하는 자료구조
배열의 특징
- 연속된 메모리 구조로 인해 캐시 적중률이 높음
- 추가적인 메모리 소모가 거의 없음
배열의 연산 시간 복잡도
- 임의의 위치에서 접근/변경 : O(1) (인덱스 활용)
- 배열 끝에서 삽입/삭제 : O(1) (단, 정적 배열은 불가능)
- 임의의 위치에서 삽입/삭제 : O(N) (데이터 이동 필요)
문자열 (String)
말 그대로 문자의 배열. 단, Java, Python 등의 언어에서는 불변성(immutable)을 가지기 때문에 직접 수정할 수 없다.
파이썬 문자열 수정 방법
새로운 문자열을 생성해 수정하기
# Hello World를 새 문자열을 생성해 Heloo World로 바꾸기
word = "Hello World"
word2 = word[:3] + "o" + word[4:]
print(word2) # Heloo World 출력
list로 변환하여 수정 후 다시 문자열로 변환하기
# Hello World를 list로 변환해 수정 후 문자열로 다시 바꾸기
word = "Hello World"
word_arr = list(word)
word_arr[3] = "o"
print(''.join(word_arr)) # Heloo World 출력
'크래프톤 정글 > CS기초(키워드, 개념정리)' 카테고리의 다른 글
[CS기초] 알고리즘 복잡도(Big-O Notation) (0) | 2025.03.19 |
---|---|
[CS기초] 반복문(Loop), 재귀 함수(Recursion Function) (0) | 2025.03.19 |
[CS기초] 32비트 vs 64비트 차이점 (0) | 2025.03.18 |
[인 더 정글] JWT, 이것만 알고 가기 (0) | 2025.03.14 |
[인 더 정글] Jinja2, 이것만 알고 가기 (0) | 2025.03.13 |