본문 바로가기
자료구조

좋아~ 빠르게 (배열 선언하러) 가!

by sleepycho 2024. 4. 23.

 

파이썬에서 배열을 선언하면 다음과 같이 생성할 수 있다.

 

# 예제: 배열 생성과 접근

# 1차원 배열 생성
arr1d = [1, 2, 3, 4, 5]

# 2차원 배열 생성
arr2d = [
    [1, 2, 3],
    [4, 5, 6],
    [7, 8, 9]
]

# 배열 요소 접근
print("1차원 배열 요소 접근:")
for elem in arr1d:
    print(elem)

print("\n2차원 배열 요소 접근:")
for row in arr2d:
    for elem in row:
        print(elem, end=" ")
    print()

 

참고로, C언어와 파이썬의 배열은 몇 가지 중요한 차이점이 있다. 아래에서 각 언어의 배열 특성을 비교해보겠다.

 

C언어 배열:

    • 정적 배열 (Static Array): 크기가 고정되어 있으며, 컴파일 시점에 메모리를 할당함.
    • 동일한 자료형만 담을 수 있음: C언어 배열은 한 가지 자료형만 담을 수 있음.
    • 메모리 연속적 할당: 배열 요소는 메모리에서 연속적으로 할당됨.
    • 인덱스는 0부터 시작: 배열의 인덱스는 0부터 시작함
int a[5] = {1, 2, 3, 4, 5}; // 1차원 배열
int b[3][4]; // 2차원 배열

 

파이썬 배열 (리스트와 튜플):

  • 동적 배열 (Dynamic Array): 크기가 고정되어 있지 않으며, 필요에 따라 동적으로 크기를 조정할 수 있음.
  • 다양한 자료형 담을 수 있음: 리스트와 튜플은 여러 자료형을 담을 수 있음.
  • 메모리 연속성 없음: 파이썬 리스트는 값들이 연속적인 곳에 있을 수도 있고 아닐 수도 있음.
  • 인덱스는 0부터 시작: 파이썬 배열의 인덱스도 0부터 시작함.
a = [1, 2, 3, "python"]  # 리스트
b = (1, 2, 3, "python")  # 튜플

 

파이썬의 배열은 리스트와 튜플로 구현되며, 자료형 선언이 덜 제한적이다.

'자료구조' 카테고리의 다른 글

하노이의 탑  (0) 2024.06.09
C언어 스택 PUSH, POP 과정  (0) 2024.04.23
자료형이란 무엇인가?  (0) 2024.04.23
렝스부호화에 대하여  (0) 2024.04.23
이미지는 어떻게 저장되고 표현되는가?  (0) 2024.04.23