강의

멘토링

커뮤니티

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

이시영님의 프로필 이미지
이시영

작성한 질문수

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part2: 자료구조와 알고리즘

동적 배열 구현 연습

RemoveAt 질문

작성

·

337

0

16:33초 부터 진행하는 RemoveAt 관련 질문입니다.
 
_data[i] = _data[i+1]
뒤에 있던 친구들이 앞으로 들어가는 부분은 이해했는데
 
17:45분 부터 18:20 말씀하시는 for문의 조건 Count, Count -1의 범위 부분을 제대로 이해하지 못하겠습니다 ㅠㅠ

답변 1

1

Rookiss님의 프로필 이미지
Rookiss
지식공유자

엄청 대단한 내용은 아니고 그냥 우리가 만든 코드에서
for에 넣어야 하는 숫자가 Count인지 Count-1인지
헷갈릴 수 있는데, 직접 대입해보면 Count-1이 맞다는 내용입니다.

for문 안에 _data[i] = _data[i+1]이라는 코드가 있으니 i < Count-1로 해야
i의 최대값이 Count-2가 되어서 _data[i+1]가 _data[Count-2+1] 즉 _data{Count-1] (최대범위)
가 된다는 내용입니다. 

Count를 Length로 봐도 무방합니까? 이렇게 보면 더 알아보기 쉬운 것 같은데..

배열은 0부터 시작하니

{ 1,  2,  3,  4, 5 } Length = 5  인덱스는 4까지.

for(int i = index; i < Length(5) - 1; i ++) { ... } 

이시영님의 프로필 이미지
이시영

작성한 질문수

질문하기