파이썬

[자료구조] Array를 파이썬으로 구현하기

Mara7 2023. 4. 12.
반응형
LIST

Array를 파이썬으로 구현하는 방법

class Array:
    def __init__(self, size): 
    # 배열의 갯수를 초기화하기
        self.array = [0]*size
        # 빈공간에 0을 일단 갯수만큼 채워준다.
    def get(self, idx): 
    # get 함수 정의, 인덱스는 정해져 있음. 해당 인덱스의 값을 가져오기.
        return self.array[idx]
        # 함수의 인덱스 번호 -> 해당 값 출력 candy[0] => 레몬맛
    def set(self, idx, value): 
    # set함수 정의 값 설정한다. 값에 인덱스랑 값 설정
        self.array[idx] = value 
        # array[0]= 레몬맛

# self.array <어트리뷰트 참조>
	# self는 인스턴스를 받아들인다는 의미이다. 
    	# 인스턴스란? 클래스에 의해 만들어진 객체(클래스의 클론)
        # 인스턴스가 가능한 유일한 연산 -> 어트리뷰트 참조
	# array는 Array클래스 함수의 어트리뷰트(클래스 내부에 포함되어 있는 함수,변수)

data = Array(5)
data.set(0,"레몬맛")
data.set(1,"딸기맛")

print(data.get(1))

 

 

배열은 4가지 특징을 가지고 있습니다.

1.크기가 정해져있다.

2. 인덱스를 가진다.

3. 같은 자료형의 데이터들을 하나의 변수로 정의한다.

4. 메모리 주소가 순차적이다. 

 

위의 특징에 기반하여, 클래스로 함수를 만들어 보겠습니다.

 

init 함수

1번째 특징인 배열은 크기가 정해져있기 때문에, 배열을 만들기전에 배열의 갯수를 정의합니다.

init 함수로 배열의 처음 갯수를 정의합니다. 

 

get 함수

get함수로, 해당 배열의 값을 가져올 수 있습니다.

사탕이라는 배열이 있을때, 사탕 = [레몬맛, 딸기맛, 수박맛]

사탕[0] 은? 레몬맛이라는 결과를 얻을 수 있습니다.

 

set 함수

set함수는 인덱스에 값을 설정할 수 있습니다.

사탕 =[0,0,0]

사탕[0]의 배열에 레몬맛을 넣고 싶다면, 사탕[0] = "레몬맛"

반응형
LIST

댓글