전체 글188 [Kmooc] 2. Big-O 표기법 g(n)은 f(n)의 최악의 경우 g(n)은 f(n)보다느리다 : 빅-오메가(n) f(n)=O(g(n)) and f(n)=빅-오메가(g(n) f(n)=빅-세타(g(n)) g(n)=1 -> f(n)=O(1) : 상수시간복잡도 g(n)=n -> f(n)=O(n) : 선형시간복잡도 g(n)=n^k STUDY/자료구조 2022. 4. 22. [Kmooc] 중간고사 정리 본 게시글은 Kmooc-자료구조 수업의 중간고사를 기반으로 정리함. 시간복잡도 : n^100 < 2^n < n! < n^n 정렬되지 않은 배열에서 삽입 : O(1) 정렬되지 않은 연결 리스트에서 삭제 : O(n) 정렬된 배열에서 이진 탐색 (binary search) : O(log n) 버블 정렬 : D(n^2) 성능을 측정할 때 보장의 의미를 부여하기 위해서 선택하는 성능 : 최악의 경우의 성능 f(n) = O(n^2)에 대한 설명 f(n)은 어떤 경우에도 n3보다 빠르다. f(n)의 최악의 경우는 n2이다. f(n)의 상한은 n2이다. f(n)은 n2보다 성능이 더 좋다. 배열 연속적으로 할당된 기억 공간에 저장된다. 배열의 모든 원소들은 인덱스에 대응된다. n 개의 자료를 하나의 주소로 접근할 수 .. STUDY/자료구조 2022. 4. 22. 220417 오류 해결의 기쁨 날 며칠 동안 너무 힘들고 괴롭게 했던 ㅠㅠ 사이트 배포 오류를 해결했다..!!! 아니 사실 아직 해결 완료는 아니지만 그래도 어영부영 돌ㅇㅏ가게는 해놨다!!! 별거 아닐지 몰라도 나는 지금 이 순간 정말 기쁘다,, 해결하고 난 지금 이 순간 바보 같았던 오류, 또 그걸 어떻게 해야 할지 알아채지도 못하고 낭비한 시간들, 완전히 해결하지 못한 찜찜함 을 가지고 있지만 저런 과정을 거쳐서 깨닫고 성장했다는 것이 기특하고 웅웅 그런거지 요 며칠 전공에 대한 자신감도 와장창 떨어지고 인생과 미래에 대한 회의감으로 아주 힘들었는데 그래도 좀 나아지는 기분!!! 앞으로도 화이팅 ㅠㅠ~👊🔥❤ 23G/일기 2022. 4. 17. [TIL] 220411 React Route, Tromino Tile, Netlify 등등등,,, 요즘은 모하캐 개발 때문에 정신이 없다,, 오늘은 일주일에 한 번 있는 개발 멘토링 시간 . . . 지금 이런거 쓸 시간이 없다,, 왜냐구..? 잘되던 배포가 오류 폭탄을 맞고 장렬히 사망했기 때문이지,,, 정말 힘든 하루군아,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,휴 23G/일기 2022. 4. 11. 이것은 TIL인가 회고인가 무엇인가 이것은 그냥 일기다!!! ㅜㅜ 아니,, 무슨 공대생들이 블로그 포스팅을 그리도 잘하는 것인지 이래서 융합형 인재 웅합형 인재 하는걸까? 나는 아직 TIL도 잘 모르고 회고할 것도 없다.. 그냥 매일매일의 기록을 끄적이기 아니 그나저나 이거 혹시 로나 후유증...??? 계속 방금 생각했던 걸 까먹고 내가 뭐 하려했지 하네 원래 그랬던거 같기도 하고 하하핳 아무튼 오늘은 본격적인 공부를 시작한 날! 아니 정확히 말하면 공부의 시작을 시작한 날 ㅎ 여지껏 미뤄놨던 일들을 정리하며 할 일들을 계획하는데,, 어렵다 어려워 J형 인간 되기 어쨋든 오늘의 아주 당장 급한 일은 처리했다. 내가 요즘 알게된 나의 문제점 선택과 집중을 잘 못한다!!! 할 일이 다양하게 많다보니 a일 해야지~ 하다가 b를 하고 있고 a로 .. 23G/일기 2022. 3. 29. [C로 배우는 자료 구조] 시간복잡도와 점근적 분석(2) 이번 시간에는 이진검색과 정렬에 대해 배웠다. 이진검색의 기본 조건 -> 배열에 저장 되어있어야 하고, 정렬되어 있어야 한다. 이진검색이란 우리가 영어 단어를 영어 사전에서 찾을 때와 비슷한 방법 배열리 있으면 그 배열의 가운데 값을 보고 내가 찾는 값이 가운데 값의 앞에 있을지 뒤에 있을지 범위를 좁혀나가면서 찾는 방법. 그렇게 범위를 좁혀 나가다보면 이렇게 first = middle = last 인 값을 찾을 수 있게 된다. -> 내가 찾는 값!!! 이진검색은 한 번 실행 할 때마다 남아있는 데이터가 절반으로 줄어들기 때문에 시간복잡도는 O(log2n) ((티스토리는 수식 못넣나?;;;ㅠㅠ)) 연결리스트에서 불가능 한 이유는 가운데 값에 먼저 접근 할 수 없기 때문 접근하려면 처음부터 접근해야하니까 .. STUDY/자료구조 2022. 3. 12. [C로 배우는 자료구조] 시간복잡도와 점근적 분석(1) 하이루 ,, 개강을 해버렸음니다... 제가 이번에 학교에서 수강하는 자료구조 과목이 책이나 인프런 강의의 목차와 다르게 진행되기에 학교 수업에 맞춰서 강의를 듣도록 하겠습니다!! 그래서 시간복잡도부터! 시간복잡도 : 쉽게 말해 시간이 얼마나 걸리냐! 시간 복잡도는 실행 환경에 다라 달라지며 실행 시간을 측정하는 대신 연산의 실행 횟수를 카운트 함 이때 횟수를 입력 데이터의 크기레 관한 함수로 표현한다 데이터의 크기가 같더라도 실제 데이터에 따라서 달라지는데 이때는 대푯값을 사용 -> 대푯값 : 최악의 경우 시간 복잡도 , 평균 시간복잡도 ->최악의 경우 : 최-경보다 시간이 많이 걸리진 않을을 의미, 평균보다 단순해서 더 많이 사용된다 점근적 표기법 데이터의 갯수가 n->∞ 일 때 수행시간이 증가하는 g.. STUDY/자료구조 2022. 3. 4. [C로 배우는 자료구조] C언어에서의 포인터, 배열, 그리고 포인터 연산 자료구조 첫 글! 먼저 강의를 듣고 복습 겸으로 요약해서, 공부한 것들을 업로드 할 예정이다. 처음 올리는 글도 아니면서 어떻게 써야 할 지 모르겠는 것은 왜그럴까,,,>///포인터로 선언 시 : array = tmp; 가능 / 배열로 선언 시 : array = tmp; 불가능 들을 때는 굉장히 유익하게 들었는데 막상 정리해보니까 너무 간결하고 단순해보이는..!!! ㅠㅠ 잘 정리한게 맞나 ㅎ 앞으로 더 노력해보야겠다! STUDY/자료구조 2022. 2. 27. [모각코 C언어 메이트 심화편] 헤더파일 | 📌 헤더 파일이란? h 확장자로 만들어진 친구들 : C 파일로 만들어진 오브젝트 파일에 있는 함수들의 내용을 다른 소스 파일에서 사용하기 위해서 ✅ 헤더 파일을 사용하는 이유 헤더는 C 코드에서, "선언부"들을 모아둔 파일이라고 생각하시면 돼요. ✔ header.h #include struct Score { int kor; int eng; int math; }; void PrintStruct(struct Score person); header.h 파일에는 main함수의 선언 부분을 넣어줄게요. 일반적으로 헤더 파일에 선언한 뒤, 해당 코드 파일에 그 정의를 작성한답니다. ✔ header.c #include "header.h" void PrintStruct(struct Score person) { pr.. STUDY/C 2022. 2. 24. [모각코 C언어 메이트 심화편] 동적 메모리 할당 | 응용문제 : 소수 갯수 출력하기 원래 동적 메모리 글을 연달아서 올렸어야 하는데 실수로 다음글을 먼저 올려버렸네요!!! 쩔 수 없이 동적 메모리 응용 문제 글을 다음 순서에 업로드합니다~~ 처음 작성한 잘못된 코드 #define _CRT_SECURE_NO_WARNINGS #include #include //#include int main(void) { int N; int* arr; int count = 0, sum = 0; printf("숫자의 갯수 : "); scanf("%d", &N); //printf("\n"); arr = (int*)malloc(sizeof(int) * N); //arr = (int*)calloc(std, sizeof(int)); for (int i = 0; i < N; i++) { //N은 숫자의 갯수 //pr.. STUDY/C 2022. 2. 24. [모각코 C언어 메이트 심화편] 문자열 함수 | 버퍼 | 문자열 길이 비교 📌버퍼를 알아보자.. 버퍼링..? 버퍼링: 버퍼를 활용하는 방식, 버퍼를 채우는 동작 버퍼(buffer)라는 임시 메모리 공간 버퍼를 사용하지 않는 경우, 키 입력 시마다 프로그램에 바로 전달이 된답니다. 이와 반대로, 버퍼를 사용하는 경우 키 입력을 "버퍼에 전달 및 저장"하고, 개행문자가 오거나, 버퍼가 가득 찬 경우 "버퍼를 프로그램에 전달"해요. 📌글자는 내가 담당한다..문자열 함수 문자열 함수는 헤더 파일과 헤더 파일이 담당해요. 헤더 파일 ✅ gets_s, puts gets_s는 "표준 입력 스트림의 버퍼에서 문자열을 읽는 함수" 이고, puts는 "표준 출력에 문자열을 쓰는 함수" 에요. 쉽게 말해, printf나 scanf처럼 입력과 출력을 받는 함수이죠! char *gets_s(c.. STUDY/C 2022. 2. 24. [모각코 C언어 메이트 심화편] 동적 메모리 할당 | 점수의 평균 구하기 1️⃣ 코드 영역 실행할 프로그램의 코드가 저장되는 메모리 공간 2️⃣ 데이터 영역 전역 변수와 static 변수가 할당되는 영역. 프로그램 시작과 동시에 메모리에 할당되고, 프로그램 종료 시까지 남아있음. 3️⃣ 스택 영역 지역변수와 매개변수가 할당되는 영역. 함수를 벗어날 때 소멸한다. 4️⃣ 힙 영역 동적 할당된 메모리들이 존재하는 공간 📌메모리 할당하는 방법 1️⃣ 정적 메모리 할당 변수 선언 장점은 메모리 누수를 걱정하지 않아도 된다 단점은 메모리 공간의 크기가 정해져 있어서, 더 큰 공간이 필요하더라도 추가해줄 수 없고, 반대로 더 작은 공간이 필요한 경우 메모리 공간의 낭비가 발생 2️⃣ 동적 메모리 할당 실행 단계에서 메모리 공간을 할당 free 함수를 통해, 동적 할당된 기억 공간을 반환.. STUDY/C 2022. 2. 24. 이전 1 ··· 12 13 14 15 16 다음