C++ 역시 다른 언어들 처럼 소수점 자릿수 표현이 가능하다.

 

사용법

#include<iostream>
using namespace std;

int main(void){
	...
	cout << fixed;
	cout << precision(10); // 소수점 자리 설정
    	...
}

 위와 같이 cout << fixed; 작성후 precision(소수점 자릿수)에 원하는 숫자를 넣으면 된다.

 

출력

 위 코드를 예시로 10/3 을 하면 다음과 같이 소수점 아래 10자리 까지 결과가 출력된다.

결과

 

 

 

코딩을 공부하고 있는 학생입니다.

공부한 것을 정리, 공유하기 위해 블로그를 운영하고 있습니다.

포스팅에 틀린 부분이 있다면 과감한 지적, 수정의 한 마디 부탁드립니다! 감사합니다 :)

github.com/holicAZ

 

holicAZ - Overview

holicAZ has 12 repositories available. Follow their code on GitHub.

github.com

 

'Language > C++' 카테고리의 다른 글

[STL] find (vector 내부의 요소 위치 확인)  (0) 2021.02.08
[STL]sort, stable_sort  (0) 2021.01.10
[STL]map, unordered_map  (0) 2021.01.04

find란?

 - 어떤 원소가 vector 내부에 포함되는 요소인지 확인할 수 있는 함수

 - 만약 존재한다면 요소의 index를 반환해 준다.

 - 존재하지 않는다면 vector의 size 값을 반환

 

 

사용법

 - algorithm 헤더에 포함되어 있다.

#include<iostream>
#include<vector>
#include<algorithm>

using namespace std;

vector<int> v = {1,2,3,4};
...


cout << find(v.begin(), v.end(), 1) - v.begin(); // 1 존재 index : 0 출력
cout << find(v.begin(), v.end(), 2) - v.begin(); // 2 존재 index : 1 출력
cout << find(v.begin(), v.end(), 3) - v.begin(); // 3 존재 index : 2 출력

cout << find(v.begin(), v.end(), 123) - v.begin(); // 123 요소가 아님 vector의 size인 5가 출력
						   // == v.size()

 

 

 

 

코딩을 공부하고 있는 학생입니다.

공부한 것을 정리, 공유하기 위해 블로그를 운영하고 있습니다.

포스팅에 틀린 부분이 있다면 과감한 지적, 수정의 한 마디 부탁드립니다! 감사합니다 :)

github.com/holicAZ

 

holicAZ - Overview

holicAZ has 12 repositories available. Follow their code on GitHub.

github.com

 

'Language > C++' 카테고리의 다른 글

C++ 소수점 자릿수 정하기  (0) 2021.03.02
[STL]sort, stable_sort  (0) 2021.01.10
[STL]map, unordered_map  (0) 2021.01.04

sort, stable_sort 공통점

 - 둘 다 sorting(정렬)의 일종이다.

 - sort 의 기본은 오름차순 정렬이다.

- 평균적으로 O(NlogN)의 시간복잡도를 가진다.

 

 

sort, stable_sort 차이점

 - sort는 퀵정렬, stable_sort는 병합정렬로 이루어져 있다.

 - sort와 stable_sort의 차이점은 같은 항목의 정렬에 있어서 있다.

   * sort(불안정 정렬), stable_sort(안정 정렬) : sort는 같은 항목에 있어서 정렬 후와 정렬 전의 순서가 변할 수도 있고,

     stable_sort는 같은 항목은 정렬 전과 정렬 후 순서가 변하지 않는다는 특징이 있다.

 

 

사용법

 - algorithm 헤더에 포함되어 있다.

#include<iostream>
#include<algorithm>
#include<vector>
using namespace std;

vector<int> v;
...

// sort
sort(v.begin(), v.end(),compare);

// stable_sort
stable_sort(v.begin(), v.end(),compare);

 ※ compare은 사용자가 임의로 만든 비교함수 이다.

    만약 compare 자리에 아무것도 넣지 않는다면 기본적으로 sort는 오름차순으로 실행된다.

 

 관련된 문제는 BOJ 10814번 나이순 정렬 (www.acmicpc.net/problem/10814)

 

 

 

코딩을 공부하고 있는 학생입니다.

공부한 것을 정리, 공유하기 위해 블로그를 운영하고 있습니다.

포스팅에 틀린 부분이 있다면 과감한 지적, 수정의 한 마디 부탁드립니다! 감사합니다 :)

github.com/holicAZ

 

holicAZ - Overview

holicAZ has 10 repositories available. Follow their code on GitHub.

github.com

 

'Language > C++' 카테고리의 다른 글

C++ 소수점 자릿수 정하기  (0) 2021.03.02
[STL] find (vector 내부의 요소 위치 확인)  (0) 2021.02.08
[STL]map, unordered_map  (0) 2021.01.04

map

 - map은 red-black Tree로 구현돼 있다. 즉, 균형 트리 형태

#include<map>
std::map<key,value> 변수명 ;

 

unordered_map

 - unordered_map은 hash table로 구현돼 있다.

#include<unordered_map>
std::unordered_map<key,value> 변수명 ;

 

사용법

 - 둘 다 <key,value> 꼴로 데이터를 저장한다.

 - 삽입을 위한 insert, 삭제를 위한 delete, find, count, size, clear 등 사용법은 동일하다.

 

 

차이점

 - map 과 unordered_map의 큰 차이 점은 구현에서 부터 이미 차이가 난다. 

 - map은 탐색연산의 시간복잡도가 O(log N) 인 반면 unordered_map은 O(1) 이다.

 - map은 균형트리에 맞게 항상 정렬하지만, unordered_map은 그렇지 않다.

 

 

결론

 - 정렬을 필요로 하는 경우가 아니라면 연산속도는 unordered_map이 훨씬 유리하다.

 - 일반적으로 key값이 짧고, int형인 경우 unordered_map을 권장한다.

 - key값이 길고 복잡하며, 유사한 값이 많을 경우 unordered_map의 해쉬 충돌로 인해 성능이 저하될 수 있다.

 

 추가적인 map의 사용법은 후에 포스팅 하겠습니다.

 

코딩을 공부하고 있는 학생입니다.

공부한 것을 정리, 공유하기 위해 블로그를 운영하고 있습니다.

포스팅에 틀린 부분이 있다면 과감한 지적, 수정의 한 마디 부탁드립니다! 감사합니다 :)

github.com/holicAZ

 

holicAZ - Overview

holicAZ has 10 repositories available. Follow their code on GitHub.

github.com

 

'Language > C++' 카테고리의 다른 글

C++ 소수점 자릿수 정하기  (0) 2021.03.02
[STL] find (vector 내부의 요소 위치 확인)  (0) 2021.02.08
[STL]sort, stable_sort  (0) 2021.01.10