컨테이너 | vector | list | map,set |
---|---|---|---|
자료구조 | 동적배열 | 연결형 리스트 | 이진탐색트리 |
입력 | O(1) | O(1) | O(logN) |
삭제 | O(N) | O(1) | O(1) |
인덱싱 | O(1) | O(N) | O(N) |
탐색 | O(N) | O(N) | O(logN) |
set<int> intset;
intset.insert(100);
intset.insert(150);
intset.insert(170);
intset.insert(125);
intset.insert(80);
intset.insert(90);
intset.insert(50);
set<int>::iterator iter = intset.find(125);
iter = intset.find(125); // 1
iter = intset.find(124); // 2
if (iter != intset.end())
{
}
else
{
}
100
/ \
80 150
/\ /\
50 90 125 170
#pragma once
template<typename T>
struct BSTNode
{
T Data;
BSTNode* pParent;
BSTNode* pLeftChild;
BSTNode* pRightChild;
};
#include <iostream>
#include <set>
#include <map>
using std::set;
using std::map;
using std::make_pair;
int main()
{
set<int> intset;
intset.insert(100);
intset.insert(150);
intset.insert(170);
intset.insert(125);
intset.insert(80);
intset.insert(90);
intset.insert(50);
set<int>::iterator iter = intset.find(125);
iter = intset.find(125);
iter = intset.find(124);
if (iter != intset.end())
{}
else
{}
return 0;
}
#pragma once
// Binary Search Tree(BST)
template<typename T>
struct BSTNode
{
T Data;
BSTNode* pParent;
BSTNode* pLeftChild;
BSTNode* pRightChild;
};
1차 23.01.03
2차 24.01.04
3차 24.01.05
4차 24.01.09
5차 24.01.10