본문 바로가기

분류 전체보기58

C++ STL Sort()함수 사용법. sort 함수는 C++ STL에서 제공하는 함수로써 정렬에 이용되면 헤더를 include하여 사용한다.시간복잡도는 nlogn이다. 사용법은 두 가지가 있다.vectorv(10,4); //4로 초기화 된 벡터 10개 생성.sort(v.begin(),v.end());sort(v.begin(),v.end(),compare_func); 첫 번째 경우첫 번째 인자: iterator(or 포인터)에서 정렬을 시작 할 부분두 번째 인자: iterator(or 포인터)에서 정렬을 마칠 부분 이 때 중요한 점은 [begin,end) 범위로 정렬을 한다는 것이다. (begin 즉, 예를 들어 int a[100]에서 0~10번 인덱스까지 정렬한다고 했을 때, 첫 번째 인자에는 배열의 시작 주소인 a을 넣고, 두 번째 인자에.. 2024. 7. 17.
C++ Vector 자료형이란? 벡터가 뭔데? 벡터는 배열과 비슷하지만 배열과 달리 크기를 미리 지정하지 않고 동적으로 조절할 수 있다.즉, 프로그램 실행 중에 필요에 따라 배열의 크기를 늘리거나 줄일 수 있다. 벡터 사용자가 데이터를 추가하거나 제거할 때 자동으로 크기를 조절한다.크기를 동적으로 조절함으로써 메모리를 효율적으로 활용할 수 있다.원래 배열은 컴파일 시에 크기를 고정해야 하지만 벡터는 선언 시 크기를 지정하지 않아도 된다.따라서 크기를 조절할 수 있어 더 유연한 데이터 구조를 제공한다. 벡터의 각 요소에 접근하여 원소를 추가하거나 삭제할 수 있다. 이로 인해 벡터의 크기가 동적으로 변한다. 또한 다양한 멤버 함수들을 제공한다. 예를 들어 push back 함수를 통해 원소를 벡터의 끝에 추가할 수 있고, pop_back .. 2024. 7. 16.
2751 C++ 원래 지금껏 c를 통해서 알고리즘 문제를 풀었는데 이제 c++로 넘어가야 할 것 같다.왜냐하면 이러한 정렬 알고리즘은 이미 라이브러리 상으로 최대효율을 내도록 구성이 되어 있기에,이를 이용하는 능력을 키우는게 중요하다 생각하기 떄문이다. 물론, 라이브러리를 가져다가 쓰기 전에 정렬 알고리즘은 이해하고 쓰는 것이 중요하다 생각한다. #include#includeusing namespace std;int arr[1000001];int main() { int a; cin >> a; for (int i = 0; i > arr[i]; } sort(arr, arr + a); for (int i = 0; i  algoritm 라이브러리의 sort함수를 사용했다.이는 arr배열에 a번째 까지 정렬한다는 의미이다. .. 2024. 7. 15.
함수 내부에 크기가 큰 배열을 선언하면 메모리 초과 알고리즘 문제를 풀다가 main함수 안에 크기가 큰 배열을 선언하니 계속 오류가 생겼다. 지역 변수로 배열을 선언하면 힙 영역에 할당되고, 전역 변수는 스택에 할당된다고 한다.그런데 힙 영역에 할당되는 Default 크기가 매우 작기 때문에 이러한 에러가 발생하는 것이다. 그래서 전역변수로 선언하면 문제가 해결된다. 2024. 7. 15.
쿠버네티스(Kubernetes)란 뭘까? 쿠버네티스란 뭘까?쿠버네티스(k8s 또는 "큐브(kube)"라고도 함)는 컨테이너화된 애플리케이션을 배포, 관리, 확장할 때 수반되는 다수의 수동 프로세스를 자동화하는 오픈소스 컨테이너 오케스트레이션 플랫폼이다. 즉, 쿠버네티스는 간단히 말하면, 컨테이너화된 워크로드와 서비스를 관리하기 위한 이식성이 있고 확장 가능한 오픈소스 플랫폼이다. //워크로드란?워크로드는 시스템이나 네트워크가 작업을 완료하거나 특정 출력을 생성하는 데 걸리는 시간과 컴퓨팅 리소스의 양을 말합니다. //컨테이너란?컨테이너란 OS상에 논리적인 구획을 만들어서, 애플리케이션을 작동시키는데 필요한 라이브러리나 종속 항목들을 모아 마치 별도의 서버인 것 처럼 사용할 수 있게 만든 것이다. 이는 과거의 배포의 방식들의 단점을 보안하여 만든.. 2024. 7. 10.
AWS에 대해..... VPC가 뭐냐?Amazon Virtual Private Cloud(Amazon VPC)란1. 논리적으로 할당된 가상의 네트워크 공간이다.2. 가상의 네트워크에서 AWS리소스를 이용할 수 있는 서비스이다. VPC는 독립적인 가상의 네트워크 공간으로 사용자의 설정에 따라 자유롭게 구성할 수 있는 공간을 의미한다.따라서 사용자는 서브넷 생성, 라우팅 테이블, 네트워크 게이트웨이 구성 등 네트워킹 환경을 사용자가 원하는 대로 제어할 수 있는 공간이다. AWS Cloud 내에 VPC라는 공간을 따로 만드는 것과 같다.  VPC안에 서브넷을 설정할 수 있다. 서브넷이 뭐냐?클래스 단위로 네트워크를 분류하다보니 어떤 기업에서는 적은 양의 호스트 주소가 필요한데 이를 유동적으로 사용하기 위해 만든 것이다. 그냥 네트워.. 2024. 7. 9.