Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 윤송이
- hackingback
- 해킹
- ACDC
- CVE
- webofscience
- 밀리테크챌린지
- Los
- blindSQL
- Selenium
- clarivate
- LordOfSQLInjection
- cna
- 디지털자구행위
- CTF
- 보복해킹
- 과학기술전문사관
- 인공지능윤리
- 가장인간적인미래
- 웹취약점
- 사이버위협
- 윤리적해커
- 해킹백
Archives
- Today
- Total
프리미의 공간
C++ binary search 관련 본문
binary_search() 함수
안에 내용이 있는지 없는지만 bool형으로 알려줌
실행전에 정렬되어 있어야 함
vector<int> v{3,2,1,4,6};
sort(v.begin(), v.end());
binary_search(v.begin(), v.end(), 3); // true
int comp(int a, int b) {return a-b;}
binary_search(v.begin(), v.end(), 5, comp); // false
equal_range() 함수
이진 탐색을 이용하며, 해당 값이 어디부터 어디까지 있는지 알려줌
마찬가지로 정렬되어 있어야 함
vector<int> v{6,3,2,10,10,10,-10,-10,7,3,20};
pair<vector<int>::iterator, vector<int>::iterator> bounds;
sort(v.begin(), v.end()); // {-10, -10, 2, 3, 3, 6, 7, 10, 10, 10, 20}
bounds = equal_range(v.begin(), v.end(), 10); // ^ ^
cout << distance(v.begin(), bounds.first); // 7
cout << distance(v.begin(), bounds.second); // 10
lower_bound() 함수
value 이상의 처음 나오는 위치
vector<int> v{1,2,4,5,6,6,7,7,7,9};
// 1, 2, 4, 5, 6, 6, 7, 7, 7, 9
lower_bound(v.begin(), v.end(), 6); // ^
// 1, 2, 4, 5, 6, 6, 7, 7, 7, 9
lower_bound(v.begin(), v.end(), 7); // ^
// 1, 2, 4, 5, 6, 6, 7, 7, 7, 9
lower_bound(v.begin(), v.end(), 8); // ^
// 1, 2, 4, 5, 6, 6, 7, 7, 7, 9
lower_bound(v.begin(), v.end(), 9); // ^
upper_bound() 함수
value 초과의 처음 나오는 위치
vector<int> v{1,2,4,5,6,6,7,7,7,9};
// 1, 2, 4, 5, 6, 6, 7, 7, 7, 9
lower_bound(v.begin(), v.end(), 6); // ^
// 1, 2, 4, 5, 6, 6, 7, 7, 7, 9
lower_bound(v.begin(), v.end(), 7); // ^
// 1, 2, 4, 5, 6, 6, 7, 7, 7, 9
lower_bound(v.begin(), v.end(), 8); // ^
// 1, 2, 4, 5, 6, 6, 7, 7, 7, 9
lower_bound(v.begin(), v.end(), 9); // ^
'Dev > C, C++' 카테고리의 다른 글
C++ sort 관련 (0) | 2020.03.05 |
---|---|
C++ 새로운 for문 (0) | 2020.03.05 |
C++ tuple 정보들 (0) | 2020.03.03 |
C언어 자주 쓰이는 것들 (0) | 2020.03.02 |
C++ vector 많이 쓰이는 것들 (0) | 2020.03.02 |