๋ฐฐ์ด
์ธ๋ฑ์ค์ ๊ฐ์ ์ผ๋์ผ ๋์ํด ๊ด๋ฆฌํ๋ ์๋ฃ๊ตฌ์กฐ
- ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ์ ์๋ ๋ชจ๋ ๊ณต๊ฐ์ ์ธ๋ฑ์ค์ ์ผ๋์ผ ๋์
- ์ด๋ค ์์น์ ์๋ ๋ฐ์ดํฐ๋ ํ ๋ฒ์ ์ ๊ทผ ๊ฐ๋ฅ → ์์ ์ ๊ทผ (random access)
๋ฐฐ์ด์ ์ ์ธํ๋ ๋ฐฉ๋ฒ
# 1. ์ผ๋ฐ์ ์ธ ๋ฐฉ๋ฒ
arr = [0,0,0,0,0,0]
arr = [0] * 6
# 2. ๋ฆฌ์คํธ ์์ฑ์๋ฅผ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ
arr = list(range(6)) # [0,1,2,3,4,5]
# 3. ๋ฆฌ์คํธ ์ปดํ๋ฆฌํจ์
์ ํ์ฉํ๋ ๋ฐฉ๋ฒ
arr = [0 for _ in range(6)] # [0,0,0,0,0,0]
โป ํ์ด์ฌ์ ๊ฒฝ์ฐ ๋ฐฐ์ด ๋์ ๋ฆฌ์คํธ๋ฅผ ์ฌ์ฉ โป
๋ฐฐ์ด๊ณผ ์ฐจ์
- ๋ฐฐ์ด์ 2์ฐจ์, 3์ฐจ์๊ณผ ๊ฐ์ด ๋ค์ฐจ์ ๋ฐฐ์ด๋ก๋ ์ฌ์ฉ
- ์ปดํจํฐ ๋ฉ๋ชจ๋ฆฌ ๊ตฌ์กฐ๋ 1์ฐจ์์ด๋ฏ๋ก ๋ค์ฐจ์ ๋ฐฐ์ด๋ 1์ฐจ์ ๊ณต๊ฐ์ ์ ์ฅ
- ๋ฐฐ์ด์ ์ฐจ์๊ณผ ๋ฌด๊ดํ๊ฒ ๋ฉ๋ชจ๋ฆฌ์ ์ฐ์ ํ ๋น
1์ฐจ์ ๋ฐฐ์ด
- ๊ฐ์ฅ ๊ฐ๋จํ ๋ฐฐ์ด ํํ
- ๋ฐฐ์ด์ ๋ชจ์ต = ๋ฉ๋ชจ๋ฆฌ์ ํ ๋น๋ ์ค์ ๋ฐฐ์ด์ ๋ชจ์ต
2์ฐจ์ ๋ฐฐ์ด
- 1์ฐจ์ ๋ฐฐ์ด์ ํ์ฅํ ๊ฒ
# 2์ฐจ์ ๋ฐฐ์ด์ ๋ฆฌ์คํธ๋ก ํํ
arr = [[1,2,3,4],[5,6,7,8],[9,10,11,12]]
# ์ ์ฅ๋ ๊ฐ ์ถ๋ ฅ
print(arr[2][3])
# ์ ์ฅ๋ ๊ฐ์ ๋ณ๊ฒฝ
arr[2][3] = 15
# ๋ฆฌ์คํธ ์ปดํ๋ฆฌํจ์
์ ํ์ฉ
arr = [[i]*4 for i in range(3)]
๋ฐฐ์ด ์ฐ์ฐ์ ์๊ฐ ๋ณต์ก๋
- ๋ฐฐ์ด์ ์์ ์ ๊ทผ์ด๋ผ๋ ๋ฐฉ๋ฒ์ผ๋ก ๋ชจ๋ ์์น์ ์๋ ๋ฐ์ดํฐ์ ๋จ ํ ๋ฒ์ ์ ๊ทผ ๊ฐ๋ฅ
- ๋ฐ์ดํฐ์ ์ ๊ทผํ๊ธฐ ์ํ ์๊ฐ๋ณต์ก๋๋ O(1)
๋ฐฐ์ด์ ๋ฐ์ดํฐ๋ฅผ ์ถ๊ฐํ๋ ๊ฒฝ์ฐ
(1) ๋งจ ๋ค์ ์ฝ์ ํ ๊ฒฝ์ฐ
- ๋ค๋ฅธ ๋ฐ์ดํฐ ์์น์ ์ํฅ X
- ์๊ฐ๋ณต์ก๋ = O(1)
(2) ๋งจ ์์ ์ฝ์ ํ ๊ฒฝ์ฐ
- ๊ธฐ์กด ๋ฐ์ดํฐ๋ค์ ๋ค๋ก ํ ์นธ์ฉ ๋ฏธ๋ ์ฐ์ฐ ํ์
- ์๊ฐ๋ณต์ก๋ = O(N)
(3) ์ค๊ฐ์ ์ฝ์ ํ ๊ฒฝ์ฐ
- ํ์ฌ ์ฝ์ ํ ๋ฐ์ดํฐ ๋ค์ ์๋ ๋ฐ์ดํฐ ๊ฐ์๋งํผ ๋ฏธ๋ ์ฐ์ฐ ํ์
- ์๊ฐ๋ณต์ก๋ = O(N)
๋ฐฐ์ด์ ์ ํํ ๋ ๊ณ ๋ คํ ์
- ํ ๋นํ ์ ์๋ ๋ฉ๋ชจ๋ฆฌ ํฌ๊ธฐ ํ์ธ
- ํํํ๋ ค๋ ๋ฐ์ดํฐ๊ฐ ๋๋ฌด ๋ง์ผ๋ฉด ๋ฐํ์์์ ๋ฐฐ์ด ํ ๋น ์คํจ
- ๋ณดํต ์ ์ํ 1์ฐจ์ ๋ฐฐ์ด์ 1000๋ง๊ฐ, 2์ฐจ์ ๋ฐฐ์ด์ 3000*3000 ํฌ๊ธฐ๊ฐ ์ต๋
- ์ค๊ฐ์ ๋ฐ์ดํฐ ์ฝ์
์ด ๋ง์์ง ํ์ธ
- ๋ฐฐ์ด์ ์ ํ ์๋ฃ๊ตฌ์กฐ์ด๋ฏ๋ก ๋น๋ฒํ๊ฒ ์ฝ์ ํ๋ฉด ์๊ฐ ์ด๊ณผ ๋ฐ์
โป ์ฐธ๊ณ ์๋ฃ โป
'๊ณต๋ถ ๐ > ์๊ณ ๋ฆฌ์ฆ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[์๊ณ ๋ฆฌ์ฆ] ์๋ฃ๊ตฌ์กฐ (4) ํด์ (0) | 2024.07.08 |
---|---|
[์๊ณ ๋ฆฌ์ฆ] ์๋ฃ๊ตฌ์กฐ (3) ํ (0) | 2024.07.02 |
[์๊ณ ๋ฆฌ์ฆ] ์๋ฃ๊ตฌ์กฐ (2) ์คํ (0) | 2024.06.25 |
[์๊ณ ๋ฆฌ์ฆ] ์๊ฐ ๋ณต์ก๋ (0) | 2024.06.19 |
[์๊ณ ๋ฆฌ์ฆ] ์ค๋น ์ฌํญ (0) | 2024.06.17 |