본문 바로가기

C++

(13)
(C++) - 이차원 동적할당 방법(2차원 동적할당) // 메모리 할당 int **arr = new int*[행 수]; for (int i = 0; i < 행 수; ++i) { arr[i] = new int[열 수]; } // 메모리 해제 for (int i = 0; i < 열 수; ++i) { delete[] arr[i]; } delete[] arr;
(C, C++) - 퀵소트(Quick Sort)(quick sort) 라이브러리에서 사용하기 #include #include /* qsort */퀵소트를 위한 라이브러리 int values[] = { 40, 10, 100, 90, 20, 25 }; int compare (const void * a, const void * b) { return ( *(int*)a - *(int*)b ); } int main () { int n; qsort (values, 6, sizeof(int), compare);//(배열의 이름, 정렬을 원하는 배열 개수, 자료형의 크기, 함수) for (n=0; n
(C++) - 코드 실행 시간 측정법 clock()함수는 원하는 시간 안에 컴파일링 할 수 있도록 시간을 측정하게 해주는 기능입니다 #include #include 이나 #include using namespcae std; int main(){ clock_t st,et; st = clock(); //시작시간 ************************************************* 측정 코드 ************************************************* et = clock(); cout
(C++ 오류) - bad_alloc오류 배열의 오버플로우 일때 가장 잘 발생하는 오류인거 같네요배열의 상태를 자세히 확인하는게 가장 중요한 것 같습니다 또한 동적할당이 제대로 이루어지지 않았을 때 발생합니다동적할당한 부분의 문법을 다시 한 번 꼼꼼히 점검해주세요
(C, C++) - 카운팅 정렬(counting sort) - 시간 복잡도 O(n): 특수 케이스에서 일반적으로 빠른 퀵(Quick) 정렬(시간 복잡도 O(nlongn))보다 더 빠름1. 가장 큰 숫자의 값만큼 배열의 방을 만듬2. 입력받은 값의 수를 세서 만든 배열에 넣어줌3. 만든 배열의 방을 누적합으로 바꿔줌4. 입력받은 배열의 인덱스 값들을 순서대로 읽으며 만든 배열의 인덱스로 가게함5. 그 후 만든 배열의 인덱스의 값을 하나 감소시킨 값을 정렬시킬 배열안에 넣어줌 1234567891011121314151617181920212223242526272829303132333435363738394041#include #include using namespace std; void counting_sort(int A[], int k, int n)..