본문 바로가기

IT/DS+Algorithm

파이썬으로 알고리즘 풀 때 꿀팁: 리스트와 문자열 그리고 변수형

프로그래밍 언어의 변수들은 Mutable(변하고)과 Immutable(안변하는) 유형으로 나뉜다. (차이)
(유형별 변수형들은 맨아래에 정리해두었다.)
안변하는 유형의 변수형들은 함수를 통해 붙이기(s = "a"; s += "b")을 지원하지만
실상은 새로운 변수를 선언하면서 만들어지고 있는 것이다. ("a"가 저장된 s와 "ab"가 저장된 s의 id가 다름)

고로, 알고리즘을 풀때 Mutable Variable을 이용하여 푸는게 빠르다.

In [9]: a
Out[9]: ['1', '5', '1', '5']

In [10]: s = "a"

In [11]: id(s)
Out[11]: 140737384645504

In [12]: s += "b"

In [13]: id(s)
Out[13]: 2425612110768

Mutable 데이터 타입

  • 사용자 정의 객체 / list / dictionary / set

Immutable 데이터 타입

  • int / float / demical / bool / string / tuple / range

 

 

파이썬 기초 Mutable vs Immutable Objects

파이썬의 모든 데이터는 객체 혹은 객체 간의 관계로 표현됩니다. 모든 객체는 Identity, Type, Value를 가지고 있습니다.특정 객체의 identity 는 선언된 이후 변하지 않습니다. 이는 메모리에 있는 주

velog.io