728x90 list3 map 만약 플레이어 아이디를 찾는것을 vector로 구현한다고 하면 #include #include #include #include using namespace std; class Player { public: Player() : _playerId(0) {} Player(int playerId) : _playerId(playerId) {} public: int _playerId; }; int main() { vector v; //10만명 입장 for (int i = 0; i < 100000; i++) { Player* p = new Player(i); v.push_back(p); } //5만명이 퇴장 for (int i = 0; i < 50000; i++) { int randIndex = rand() % v... 2023. 3. 4. list 기능을 구현해보자 #include #include #include using namespace std; template class Node { public: Node() : _next(nullptr), _prev(nullptr), _data(T()) { } Node(const T& value) : _next(nullptr), _prev(nullptr), _data(value) { } public: Node* _next; Node* _prev; T _data; }; template class Iterator { public: Iterator() : _node(nullptr) { } Iterator(Node* node) : _node(node) { } Iterator& operator++() { _node = _node->_.. 2023. 3. 4. list list(연결 리스트) list의 동작원리 중간 삽입/삭제 처음/끝 삽입 ,삭제 임의 접근 #include 작성해줘야함 push_front 지원 capacity 는 없음 front 와 back 기능으로 처음과 끝 데이터 추출 가능 #include #include #include using namespace std; int main() { list li; for (int i = 0; i < 100; i++) { li.push_back(i); } li.push_front(10); int size = li.size(); //li.capacit()//없음 int first = li.front(); int last = li.back(); //li[3] = 10; // 불가 list::iterator itBegin.. 2023. 3. 4. 이전 1 다음 728x90