과제중인데 아무리 봐도 모르겠어어여ㅠㅠ
자료구조인데
sort함수를 짜고 리스트랑 벡터안에 자료를 넣고 시간을 구하는 것입니다.
그런데 Iterator(반복자)를 써야됩니다. 라이브러리에 있는 것을 직접 구현하라고 하는데
예를들면 main에 정의된 함수 버블소트가 있다고 하면
bubblesort( Iterator& a, Iterator& b) 이런식으로 각 자료들의 이터레이터를 인자로 받아야 됩니다.
리스트의 이터레이터는 그 메소드들을 짰는데 벡터의 이터레이터는 어떻게 짜야될지를 모르겠습니다.
리스트의 이터레이터는 노드의 주소를 인자로 받아 생성하면 되던데
벡터의 이터레이터는 이터레이터 생성을 배열의 각각의 방의 주소를 인자로 받아야되는지
또 만약 그렇게 한다면 배열의 각각의 방의 주소를 어떤식으로 넘겨줘야되는지 모르겠습니다ㅠㅠ
요약하면
벡터의 이터레이터를 짤 때 생성자의 인자를 어떻게 받아줘야되나요?ㅜㅠㅠ
class IterList : public Iterator{ <----리스트의 이터레이터
private:
Node* v;
Iterator(Node* u) { v=u; }
}
class IterVector : public Iterator <-----벡터의 이터레이터
{
private:
Elem* v;
Iterator(Elem* u[], int _capacity) { v=u; } <---- 이부분에서 생성자 인자를 어떻게 받고 바디를 작성해야될지 모르겠
} 습니다.ㅠㅠㅠㅠ
염치없지만 고수님들 도와주십시요ㅠㅠㅠ
도서관에 가서 디자인 패턴 책을 한권 꺼내서 이터레이터 패턴을 살펴보면 뭔가 배울 수 있을까? 궁금궁금*^^*