inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버

기본 정렬

병합정렬 MergeResult() 질문입니다

361

로켓라쿤

작성한 질문수 12

0

안녕하세요 루키스님 강의를 듣다가 이해가 잘 되지 않는 부분이 있어서 질문드립니다!!

병합 정렬의 MergeResult() 에서 아래 코드가 잘 이해가 안되는데요..!

v[left] = temp[i] 가 아니라 v[left + i] = temp[i] 인건가요..??

// temp 에 넣어준 걸 원본에 덮어쓰기
  	for (int i=0; i<temp.size(); i++)
    	v[left + i] = temp[i];

c++ 네트워크 ue-blueprint 게임수학 windows-api

답변 1

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴이에요.

병합 정렬의 MergeResult()에서 v[left + i] = temp[i]; 코드는 임시 배열(temp)의 요소들을 원본 배열(v)에 덮어쓰는 작업을 하는 부분입니다.

병합 정렬에서는 배열을 나누어 정렬한 후에 다시 병합하는 과정이 필요한데요. 이때 병합하는 부분에서 임시 배열(temp)에 정렬한 요소들을 넣은 후에 다시 원본 배열(v)에 덮어쓰는 작업이 필요합니다.

v[left + i] = temp[i]; 의 의미는 temp 배열의 i번째 요소를 원본 배열의 left + i 위치에 덮어쓰는 것입니다. 이렇게 하면 임시 배열에 있던 요소들이 원본 배열에 복사되는 것이죠.

v[left] = temp[i]; 대신에 v[left + i] = temp[i]; 를 사용한 이유는 left 값이 배열의 시작 위치가 아닌 중간 위치일 수도 있기 때문입니다. left + i를 사용하여 각 위치에 원하는 요소를 덮어쓸 수 있도록 구현한 것입니다.

이렇게 병합 정렬에서 임시 배열에 있는 요소들을 원본 배열에 덮어쓰는 작업을 통해 병합 정렬을 완료할 수 있습니다.

더 궁금한 점이 있으시면 언제든지 물어보세요. 좋은 공부 되세요!

문제집은 없나요 수업을 어떻게 들어야 할지 모르겠어요

0

106

2

동적배열 Vector의 push_back 함수에서 조건문 질문

0

74

1

디버깅할때 메모리보는법 단축키가 뭐죠??

0

90

1

113-충돌처리 강의에서 22:26 부근의 SetPos()를 적용해도 충돌되지 않고 뚫고 지나가게 됩니다.

0

87

1

SaveFile에서 크래시 발생하는 분들 체크해보세요

1

70

1

수업자료 확인 부탁드립니다.

0

106

3

explicit을 붙였을 때 빨간줄이 뜨는 이유가 맞는지 궁금합니다.

0

100

0

22강에서 구조체와 포인터로 설명해주셨는데 패딩의 경우는 어떻게 되나요?

0

88

2

리소스 매니저 강의 18분 부근

0

89

1

[Service강의] owner -> shared_ptr

0

80

2

C#에서 생성자 관련 질문

0

83

2

특정 조건에서만 함수를 반환할 때

0

90

2

스택 empty

0

105

2

섹션4 배열실습 질문입니다.

0

132

1

섹션3 '파일분할' 강의 질문입니다.

0

99

1

Defines.h의 DECLARE_SINGLE관련 질문입니다.

0

110

1

세션8 우선순위 큐 pop함수의 Predicate 적용 관련 질문이 있습니다.

0

180

3

섹션9 함수 포인터 관련 질문입니다.

0

137

1

exercise_A 번 문제 해결방법에 대한 질문.

0

150

1

[강의명: virtual 소멸자] 자식 클래스의 소멸자에도 virtual 을 붙이시는 이유가 궁금합니다

0

198

2

Scene과 SceneManager 강의 수강 중 키보드 입력 오류

0

146

1

Window API 강의 수강 중 LARGE_INTEGER 타입 변환 오류

0

198

3

섹션15 스마트 포인터 20:00 질문이요!

0

127

1

55강 수업자료 빌드를 하면 이상합니다.

0

132

1