inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

코딩테스트 [ ALL IN ONE ]

동적 배열 (Dynamic Array)

제가 이해한게 맞는지 확인부탁드립니다. [동적배열 8: 16초]

954

똑같이썼는데안돼

작성한 질문수 14

2

Array배열의 경우

시작주소+ 4*(n-1) 즉 아무리 긴 배열이더라도

한번의 연산으로

원하는 데이터에 접근할 수 있기 때문에

배열 요소에 접근할 때의 시간복잡도는

O(1)입니다. 여기까지는 이해가 갑니다.

그런데 동적 배열 8:16초에서

Dynamic Array의 선언 및 초기화의 시간복잡도가 왜 O(n)인지 이해가 가지 않았는데요

 


질문1.

예를 들어 배열의 사이즈가 3인 경우 (자바로 예를 들어 보겠습니다.)

int[ ] array = { 10, 20, 30 };

이런 경우 배열의 요소가 3개이므로

주소값에 3번을 접근해야 하고,

int[ ] array = {1, 2, 3, 4, 5};

배열의 요소가 5개 일때는

주소값에 5번을 접근해야 하며,

int[ ] array = { 1, 2, 3,... n};

배열의 요소가 n개 일때는

주소값에 n번을 접근해야 한다.

따라서 배열의 선언 및 초기화의 시간 복잡도는 O(n)이다.

 


제가 이해한 게 맞는지 답변 부탁드립니다.

<질문하는 의도>

"강사님께서 배열에 n개의 데이터를 저장해야 하기 때문에 배열의 선언 및 초기화의 시간 복잡도는 O(n)이다."라고 말씀하셨는데,

제가 중간이 이해가 가지 않아서요 

 


 

질문2.

추가적으로 덧붙이자면

메모리의 해당 번지에 있는 값을 삭제하기 위해서도 그 번지(주소)에 접근해야 하고,

메모리의 해당 번지에 값을 추가하거나 할당하기 위해서 그 번지(주소)에 접근해야 되잖아요.

그러면 메모리주소에 "접근"이란 말은 삭제, 할당, 수정, 삽입, 모든 경우에 다 통용되는 단어인거죠??

 

python 알고리즘 algorithm 코테 준비 같이 해요!

답변 1

1

개발남노씨

똑같이썼는데안돼님! 안녕하세요.

상세한 질문을 해주셔서 어떤 부분을 답변드려야될지 쉽게 알겠어요! 바로 답변드리겠습니다.

 

질문 1.

이해하신게 너무 맞습니다. 제가

"배열에 n개의 데이터를 저장해야 하기 때문에 배열의 선언 및 초기화의 시간 복잡도는 O(n)이다."

라고 끝냈던 제가 조금 불친절했나 싶네요. 제가 다음 영상 개정시에 질문자님의 설명 방법을 적극 반영 해보도록 하겠습니다.

 

질문 2.

이것도 질문자님께서 이해하신게 정확히 맞습니다. 그래서 모든 자료구조는 메모리구조가 어떻게 됐는지 이해하는게 중요하고, 추가삭제삽입 등을 위해 "접근"을 어떻게 할 것인가를 생각해보는 것이 좋습니다.


이해도가 상당히 좋으시고, 그 부분을 자세하게 적어주시는데 굉장히 뛰어나시군요! 배워갑니다 ㅎㅎ

 

또 궁금하신점 있으시면 말씀해주세요! 화이팅~~

노션 공유 링크

0

86

2

수업 중간에 내주신 문제는 해답을 알 수 없는걸까요?

0

77

2

최신 강의와 비교

0

85

2

Min Cost Climbing stairs 질문

0

76

2

노션 공유 부탁드립니다!

1

88

2

for 문에 sort 함수 를 사용하면

1

90

2

노션 공유 부탁드립니다.

0

104

2

디스코드가 올바르지 않다고 뜹니다..!

0

107

1

그래프

0

98

2

노션 공유

1

123

2

시간복잡도 질문

2

125

3

11강 질문

1

78

2

노션 공유 부탁드립니다

0

84

2

linkedList - BrowserHistory 코드 질문

0

76

1

list1.append(list2)와 list1.append(list2[:])의 차이가 무엇인가요?

1

167

1

라이브러리 사용

1

136

2

문제 교재는 따로 없는 거 맞나요?

1

202

2

LCA 관련해서 질문이 있습니다.

1

118

2

[Unique Paths] 완전탐색 / DP (후반부)

0

108

1

dp 계단오르기최소비용질문입니다.

0

109

1

Dynamic Array 의 size 정보가 저장되는 곳

2

161

2

노션공유가 안된듯 합니다

1

163

2

[코테 적용] 👉 [3번 문제] 완전탐색 (DFS, BFS) (전반부)

1

122

1

강의자료 만들 때 사용하신 프로그램이 뭘까요?

1

203

1