인프런 커뮤니티 질문&답변

황승현님의 프로필 이미지
황승현

작성한 질문수

파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)

리스트를 만드는 방법

작성

·

190

0

안녕하세요, 강사님.

강의 들으면서 코딩테스트 정말 잘 준비하고 있습니다. 리스트를 생성하는 방법에 대한 질문이 있습니다.

 

강사님께서 리스트를 생성하실 때, 가끔은

arr = []

for _ in range(10):

    arr.append(int(input())

이런 식으로 빈 리스트를 생성한 후에 그 안에 요소들을 차곡차곡 채워 넣는 방식으로 생성하시고,

 

n = 10

arr = [0]*n

for i in range(10):

    arr[i] = int(input())

가끔은 이런 식으로 0을 채워넣은 리스트를 생성한 후에 각각의 index를 활용하여 list의 요소를 바꿔주는 방식을 이용하시는 것을 보았는데,

두 가지 방식에 따른 효율성(시간복잡도의 유의미한 차이가 있다 등) 및 논리성(두 번째 경우 C에서  Array를 구성하듯 리스트의 공간을 미리 확보해 놓고, 그 안에 값을 채워넣는 방식이다)의 차이가 있을까요?

또, 강사님이 선호하시는 방식은 무엇인지, 그에 대한 특별한 이유가 있는지 궁금합니다!

답변 1

0

김태원님의 프로필 이미지
김태원
지식공유자

안녕하세요^^

둘 모두 비슷합니다.

저는 위에 방식을 더 선호합니다.

황승현님의 프로필 이미지
황승현

작성한 질문수

질문하기