강의

멘토링

커뮤니티

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

thummim님의 프로필 이미지
thummim

작성한 질문수

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

강의교안에 1.5 순열에서 질문입니다

작성

·

160

0

next_permutation과 prev_permutation 부분 설명해주실 때 질문입니다!
 
#include <bits/stdc++.h> using namespace std; void printV(vector<int> &v) { for(int i = 0; i < v.size(); i++) { cout << v[i] << " "; } cout << "\n"; } 위 함수를
 
void printV(vector<int> &v)
{
for(auto i : v)
{
cout << v[i] << " ";
}
cout << "\n"; 
}
 
로 바꾸면 제대로된 결과가 출력되지 않는 이유는 뭔가요??

답변 1

1

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

안녕하세요. thummimi님ㅎㅎ

 for(auto i : v)

여기서 i는 무엇을 뜻할까요? v의 "요소"를 뜻합니다. 인덱스가 아니죠. 그렇기 때문에 그런 결과가 나타납니다. 

for(a : b) 하고 순회를 할 때는 인덱스가 아닌 요소를 기반으로 순회를 합니다. 

 

또한 해당 부분은 교안 1.3 부분에 설명되어있습니다. 교안을 다시 참고하시길 바랍니다. 

 

또 질문사항있으시면 언제든 말씀 부탁드립니다. 

감사합니다. 

강사 큰돌 올림. 

thummim님의 프로필 이미지
thummim
질문자

감사합니다!!

thummim님의 프로필 이미지
thummim

작성한 질문수

질문하기