일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Algorithm
- 수광 소자
- html
- Visual Micro
- c++
- Arduino
- 자료구조
- 아두이노 소스
- Deque
- arduino compiler
- Stack
- list
- map
- 아두이노 컴파일러
- priority_queue
- LineTracer
- 컴퓨터 그래픽스
- WinAPI
- set
- 운영체제
- 시스템프로그래밍
- vector
- C언어
- queue
- 통계학
- stl
- Array
- directx
- 라인트레이서
- 아두이노
- Today
- Total
목록전체 글 (545)
Kim's Programming
원형) 1234567//기본형template bool is_heap (RandomAccessIterator first, RandomAccessIterator last);//사용자 정의형template bool is_heap (RandomAccessIterator first, RandomAccessIterator last, Compare comp);Colored by Color Scriptercs 의미) [Iterator first, Iterator last) 사이에 있는 데이터들이 heap으로 정렬이 되어있으면 true를 리턴합니다. 소스) 12345678910111213141516171819202122232425262728#include #include #include void print(std::ve..
원형) 12345678//기본형template void sort_heap (RandomAccessIterator first, RandomAccessIterator last); //사용자 정의형template void sort_heap (RandomAccessIterator first, RandomAccessIterator last, Compare comp);Colored by Color Scriptercs 의미) [Iterator first, Iterator last) 사이에 있는 데이터들을 오름차순으로 정렬합니다. 소스) 12345678910111213141516171819#include#include#include void Print(const std::vector& target){ for (std:..
원형) 12345678//기본형template void make_heap (RandomAccessIterator first, RandomAccessIterator last); //사용자 정의형template void make_heap (RandomAccessIterator first, RandomAccessIterator last, Compare comp );Colored by Color Scriptercs 의미) [Iterator first ,Iterator last)사이에 있는 데이터들을 최대힙으로 정렬합니다. 소스) 123456789101112131415161718#include#include#include void Print(const std::vector& target){ for (std::ve..
원형) 12345678//기본형template void pop_heap (RandomAccessIterator first, RandomAccessIterator last); //사용자 정의형template void pop_heap (RandomAccessIterator first, RandomAccessIterator last, Compare comp);Colored by Color Scriptercs 의미) 최대힙정렬이 된 경우에 [Iterator first,Iterator last)에 있는 데이터중에서 Iterator first가 가리키는 값(가장 큰 값)을 last -1 위치에 위치시킵니다 그리고 last -1에 있는 값은 힙에서 제외되며 그 외에 것들을 최대힙으로 재정렬합니다. 소스) 123456..
원형) 12345678//기본형template void push_heap (RandomAccessIterator first, RandomAccessIterator last); //사용자 정의형template void push_heap (RandomAccessIterator first, RandomAccessIterator last, Compare comp);Colored by Color Scriptercs 의미) [Iterator first, Iterator last-1)에 있는 데이터 들이 최대힙정렬이 되어있으면 [Iterator first, Iterator last)에 있는 데이터 들이 최대힙이 되도록 한다. Iterator last -1에 위치한 데이터를 힙에 푸시한다. 소스) 12345678910..
3. 상호배제 방법들 1. 데커의 알고리즘 데커의 알고리즘은 두 프로세스가 동시에 임계 영역에 진입하려고 시도하면 순서에 따라 오직 하나만 임계 영역에 들어가도록 허용한다. 하지만 프로세스 2개가 동시에 임계 영역에 진입하도록 플래그를 설정하면 교착 상태가 발생할 수 있다. 12345678910111213141516171819202122232425262728293031323334353637383940414243//프로세스가 공유하는 데이터//int turn;bool flags[2];////////////////////////////// void main(){ flags[0] = false; flags[1] = false; turn = 0; //Shared Variable 0 또는 1 //Process P..
1. 병행 프로세스 1. 병행 프로세스의 개념 * 프로세스병행 프로세스: 동시에 여러개 프로세스가 진행되고 있는 경우이나 어느 한 순간에는 하나의 프로세스만 실행 됨.(프로세스 1개)병렬 프로세스: 동시에 여러개의 프로세스가 실행되고 있는 것(프로세스 n개) 2. 병행 프로세스의 해결 과제 공유 자원을 상호 배타적으로 사용해야 한다. 통신망 등은 한순간에 프로세스 하나만 사용해야 한다.병행 프로세스 간에는 협력이나 동기화가 되어야한다.실행 순서에 맞게 수행되어야 한다.교착 상태를 해경해야한다.병행 프로세스를 수행하는 과정에서 발생하는 상호배제를 보장해야 한다. 2. 상호배제와 동기화 1. 상호배제의 개념 상호배제는 병행 프로세스에서 프로세스 하나가 공유 자원을 사용할 때 다른 프로세스들이 동일한 사원을 ..
소스) 123456789//기본형template pair minmax_element (ForwardIterator first, ForwardIterator last); //사용자 정의형template pair minmax_element (ForwardIterator first, ForwardIterator last, Compare comp);cs 의미) [Iterator first, Iterator last) 사이에 있는 데이터들 중요헤서 첫번째 원소로 가장 작은 값을 가리키는 Iterator를 리턴하고, 두번째 원소로 가장 작은 작은 값을 가리키는 Iterator를 리턴합니다. 소스) 1234567891011#include #include #include void main() { std::vector ..