목록𝐏𝐑𝐎𝐆𝐑𝐀𝐌𝐌𝐈𝐍𝐆 (80)
도순씨의 코딩일지
원소를 수정하지 않는 알고리즘(nonmodifying algorithms)은 원소의 순서나 원소의 값을 변경하지 않고 원소를 읽기만 하는 알고리즘입니다. 먼저 다음 예제는 adjacent_find() 알고리즘 예제로 vector의 순차열에서 현재 원소와 다음 원소가 같아지는 첫 원소의 반복자를 반환합니다. ⭐️ adjacent_find() 알고리즘 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 #include #include #include using namespace std; int main(){ vector v; v.push_back(10); v.push_back(20); v.push_back(30..
🌼 map 컨테이너 map 컨테이너는 원소를 key와 value의 쌍으로 저장합니다. 원소의 key는 컨테이너에 중복저장될 수 없습니다. 만약 중복 key를 사용해야 한다면 multimap을 사용하면 됩니다. 다음은 map 컨테이너 생성과 원소 저장을 위한 insert() 함수입니다. ⭐️ map의 insert() 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 #include #include using namespace std; int main(void){ map m; m.insert(pair(5, 100)); m.insert(pair (3, 100)); m.insert(pair (8, 30)); m.insert(pair ..
multiset은 set과 다르게 key가 중복으로 저장될 수 있습니다. 다음 예제는 중복 원소를 허용하는 multiset의 insert() 멤버 함수 예제입니다. ⭐️ multiset의 insert() 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 #include #include using namespace std; int main(void){ multiset ms; multiset::iterator iter; ms.insert(50); ms.insert(30); ms.insert(80); ms.insert(80); ms.insert(30); ms.insert(70); iter = ms.insert(10); cout
set 컨테이너는 연결 컨테이너 중 가장 단순합니다. key라 불리는 원소(value)의 집합으로 이뤄진 컨테이너입니다. 균형 이진 트리로 구현되어 있습니다. set은 모든 원소가 유일합니다. set은 특정 정렬 기준(조건자)에 따라 원소를 자동 정렬합니다. 다음은 원소를 set 컨테이너에 저장하는 예제입니다. ⭐️ set의 insert() 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 #include #include using namespace std; int main(void){ set s; s.insert(50); s.insert(30); s.insert(80); s.insert(40); s.insert(10);..
🌼 HTML의 신택스 HTML은 마크업 언어(Markup language)로 분류됩니다. 마크업 언어는 태그를 이용하여 문서를 정의하는 방법입니다. 하나하나 더 자세하게 살펴보도록 합시다. 마크업(markup) 은 내용에 대한 정보를 표현하는 방식입니다. XHTML은 HTML과 동등한 표현 능력을 지녔지만 훨씬 더 엄격한 규칙을 가졌습니다. XHTML의 목적은 구문 요류가 있는 웹 페이지를 막도록하여 페이지 렌더링을 쉽게 하는 것입니다. XHTML의 기본적인 룰은 다음과 같습니다. 💡 소문자로 된 태그 이름 💡 모든 태그는 닫혀 있어야 한다. XHTML은 두 가지 버전이 있습니다 바로 XTML 1.0 strict와 XHTML Transitional 입니다. strict 버전은 엄격한 표준으로 비표준 규격..
list 컨테이너는 노드 기반 컨테이너로 원소가 노드 단위로 저장됩니다. 자료구조의 이중 연결리스트로 구현됩니다. list는 노드 기반 컨테이너이기 때문에 임의 접근 반복자가 아닌 양방향 반복자를 제공합니다. 따라서 모든 원소를 탐색하기 위해서는 양방향 반복자인 ++와 --를 사용하면 됩니다. ⭐️ list의 push_back, push_front 반복자 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 #include #include using namespace std; int main(void){ list lt; lt.push_back(10); lt.push_back(20); lt.push_back(30); lt.push_..
deque 컨테이너는 vector 컨테이너로 vector의 단점을 보완합니다. deque 컨테이너 또한 배열 기반 컨테이너입니다. deque는 여러 개의 메모리 블록을 할당하고 사용자에게는 하나의 블록처럼 보이게 합니다. 다음 예제는 push_back() 멤버 함수를 사용하여 deque에 원소를 추가하는 예제입니다. ⭐️ push_back 멤버함수 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 #include #include using namespace std; int main(void){ deque dq; for(deque :: size_type i = 0 ; i
🌼 vector vector는 시퀸스 컨테이너이므로 원소의 저장 위치(순서)가 정해지며 배열 기반컨테이너입니다. vector은 큐와 비슷하게 앞쪽이 막혀있는 형태로 앞쪽에는 원소를 추가 및 제거할 수 없습니다. 오직 뒤쪽에서 원소의 변경이 가능합니다. ⭐️ vector의 push_back() 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 #include #include using namespace std; int main(void){ vector v; v.push_back(10); v.push_back(20); v.push_back(30); v.push_back(40); v.push_back(50); for(int i = 0 ; i