컴퓨터공학51 [자료구조] Binary Search 증명 해당 본문은 학교수업시간에 배운 강의내용을 기반으로 정리하는 요약글 입니다. 정확하지 않은 점이 있으면 지적해주시면 감사하겠습니다. 이번 글은 다들 아는 이진탐색에 대한 증명을 배웠다. 사실 이진 탐색 알고리즘 자체는 직관적이고, 이해하기가 쉽다. 문제는 이 당연한 것을 증명하려고 따지다 보니까 머리가 터지는 기분(살아있음에 감사함을)이 들었다. 이런거 증명해서 어디다 쓰지? 라고 생각할수도 있지만, 이런건 학생 신분일때 한번은 해봐야 향후 나의 발전에 큰 도움이 될거라 믿어의심치 않는다. Binary Search 의 증명 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 우선 이진탐색의 코드를 확인해 보자. 아 그리고 이진탐색은 항상 sorting되어있어야만 한다. int.. CS/Data Structure (2021-1) 2022. 1. 22. [서평] 뇌를 자극하는 C++ STL 저의 돈으로 직접사서 직접 완독해본후 써보는 후기입니다. 따라서 장점은 장점대로 칭찬할것이며, 단점은 단점대로 언급할 것 입니다. 뇌를 자극하는 C++ STL 저자 : 공동환 출판 : 한빛미디어 발매 : 2012.04.02. 2021/02/04 ~ 2021/02/18 1) 책의 표지 2) 단원별 요약 3) 읽은소감 우선 저의 글의 앞부분만 보는 분들을 위해 먼저 간단히 3가지에 대해 답해보겠습니다. Q 이 책을 읽기 전에 필요한 수준/ 지식은? => 이책은 C++을 이미 충분히 숙지한 사람을 대상으로한 추가적인 공부서적이다. STL이란 standard template library로써 C++의 표준 라이브버리에 대한 공부이다. 이를 위한 입문서가 되는 책이 바로 이책이다. 자료구조를 기반으로 .. Life/Book Record 2022. 1. 22. [서평] 명품 C++ 저의 돈으로 직접사서 직접 완독해본후 써보는 후기입니다. 따라서 장점은 장점대로 칭찬할것이며, 단점은 단점대로 언급할 것 입니다. 명품 C++ Programming 저자 : 황기태 출판 : 생능출판사 발매 : 2018.03.05. 2020/12/28 ~ 2021/02/01 (홍정모 교수님의 따배씨쁠쁠과 병행하여 공부한 교제) 1) 책의 표지 2) 단원별 구성 3) 읽은소감 우선 저의 글의 앞부분만 보는 분들을 위해 먼저 간단히 3가지에 대해 답해보겠습니다. Q 명품C++을 공부하기 전에 필요한 수준/ 지식은? => 최소한 C언어 문법은 기초정도는 알고있으셔야 합니다. 저자또한 C언어의 기초를 아는 독자를 대상으로 하는 책임을 도입부에서 명시해 주었다. 하지만 다행이도 기본프로그래밍 지식에 .. Life/Book Record 2022. 1. 21. [서평] 윤성우의 열혈 자료구조 저의 돈으로 직접사서 직접 완독해본후 써보는 후기입니다. 따라서 장점은 장점대로 칭찬할것이며, 단점은 단점대로 언급할 것 입니다. 윤성우의 열혈 자료구조 저자 : 윤성우 출판 : 오렌지미디어 발매 : 2012.01.18. 2020/8/1 ~ 2020/12/7 (학교 수업과 병행하여 전반적인 자료구조론에 이 책으로 대해 독학하였습니다.) 1) 책의 표지 2) 단원별 구성 3) 읽은소감 우선 저의 글의 앞부분만 보는 분들을 위해 먼저 간단히 3가지에 대해 답해보겠습니다. Q 자료구조를 공부하기 전에 필요한 C언어 수준/ 지식은? => 최소한 C언어 문법은 다 알고있으셔야 합니다. C를 모른다면 코드를 전혀 이해하실수 없을 것 입니다. C언어 기초책이 아닌 C언어 라는 도구를 사용한 자료구조에 관한 책 입니다.. Life/Book Record 2022. 1. 20. 우아한형제들 개발자 채용설명회 : 후기 유튜브 를 통하여 이번 온라인 라이브 설명회를 듣고 몇가지 메모하기 위해 짧은 글을 작성합니다. 문제될시 삭제하겠습니다!! 목차 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 우선 배달의 민족의 핵심역할을 담당하는 딜리버리프로덕트, 배민셀프서비스 팀과 더불어 최근 1년정도 전부터 개설된 선물하기 팀의 설명이 먼저 진행 되었다. 이후 마지막 에서 진행된 인재영입팀의 설명회가 나의 주 목표였다. 인재영입팀이 안내하는 우아한형제들의 채용 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 1) 체용 Process 서류(지원서, 코딩테스트) -> 1차 실무 면접 (약 1시간) -> 2차 임원면접(약 1시간) 실무면접에서는 배달의 민족에 지원자가 얼마.. Life/컨퍼런스 2022. 1. 19. 뇌를 자극하는 C++ STL : 8장. 알고리즘 내돈내고 내가 공부한것을 올리며, 중요한 단원은 저 자신도 곱씹어 볼겸 가겹게 포스팅 하겠습니다. 1) 8장. 알고리즘 STL에는 100여개의 알고리즘이 있으며, 크게 7개로 분류가능 - 원소를 수정하지 않는 알고리즘 - 원소를 수정하는 알고리즘 - 제거 알고리즘 - 변경 알고리즘 - 정렬 알고리즘 - 정렬된 범위 알고리즘 - 수치 알고리즘 이중 2개정도만 글로 아주 간단히 정리하겠습니다. 원소를 수정하는 알고리즘 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 - transform() 순차열의 모든 원소에 사용자의 의도를 적용시키려면 for_each() 나 transform() 알고리즘을 상요합니다. trandform()이 for_each() 알고리즘과 다른점은 원본은 .. CS/C++ 2022. 1. 18. 뇌를 자극하는 C++ STL : 7장. 연관 컨테이너 내돈내고 내가 공부한것을 올리며, 중요한 단원은 저 자신도 곱씹어 볼겸 가겹게 포스팅 하겠습니다. 1) 7장. 연관 컨테이너 연관 컨테이너는 특정 정렬규칙에 맞게 원소들이 정렬된다. STL에는 set, multiset, map, multimap이 있다. 이들은 같은 인터페이스(생성자, 멤버함수, 연산자)를 제공한다. 연관 컨테이너는 모두 같은 인터페이스의 멤버 함수를 제공합니다. Set " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 pair 객체를통하여 insert 삽입의 성공유무를 알아볼 것 이다.pair에서 first와 second의 의미는 이전 따배씨쁠쁠에서 배웠던적이 있다. #include #include using namespace std; int main() .. CS/C++ 2022. 1. 18. 뇌를 자극하는 C++ STL : 6장. 시퀀스 컨테이너 내돈내고 내가 공부한것을 올리며, 중요한 단원은 저 자신도 곱씹어 볼겸 가겹게 포스팅 하겠습니다. 1) 6장. 시퀀스 컨테이너 본격적인 STL의 시작이다. 이번단원에서는 시퀀스 컨테이너에 대하여 배웠다. Vector " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 vector는 임의 접근 반복자를 지원하는 배열 기반 컨테이너이다. 배열 기반의 컨테이너이므로 원소가 하나의 메모리 블록에 할당된다. Capacity 는 다른 컨테이너들에는 없으며 오직 vector만이 갖고있다. clear() 맴버함수를 통하여 원소를 제거한후에는 size는 0이 되지만, capacity는 그대로 유지된다. 메모리가 부족한 상황이라면 이는 비효율적이다. 따라서 할당된 메모리를 모두 제거하는 방법이.. CS/C++ 2022. 1. 18. 뇌를 자극하는 C++ STL : 5장. STL 소개 내돈내고 내가 공부한것을 올리며, 중요한 단원은 저 자신도 곱씹어 볼겸 가겹게 포스팅 하겠습니다. 1) 5장. STL 소개 STL의 간략한 소개와 기본 구성요소에 대해 살펴보았다. STL의 구성 요소 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 - 컨테이너(Container): 객체를 저장하는 객체로 컬렉션 혹은 자료구조라고도 합니다. - 반복자(Iterator): 포인터와 비슷한 개념으로 컨테이너의 원소를 가리키고, 가리키는 원소에 접근하여 다음 원소를 가리키게 하는 기능 - 알고리즘(Algorithm): 정렬, 삭제, 검색, 연산 등을 해결하는 일반화된 방법을 제공하는 함수 템플릿. - 함수객체(Funtion Object): 함수처럼 동작하는 객체로 operator.. CS/C++ 2022. 1. 18. 뇌를 자극하는 C++ STL : 4장. 템플릿 내돈내고 내가 공부한것을 올리며, 중요한 단원은 저 자신도 곱씹어 볼겸 가겹게 포스팅 하겠습니다. 1) 4장. 템플릿 이번시간은 기초 C++문법 복습의 마지막 쳅터이다. 이후 5장부터 이책의 본격적인 주제인 STL에 관하여 다룬다. For_each() 함수 구현해보기 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 다음 코드는 For_each()를 template함수로 만들어 사용하는 예시이다. 원소의 type을 클라이언트가 직접 결정하여 사용할수가 있다. #include #include using namespace std; template void For_each(Iter begin, Iter end, Func pf) { while (begin != end) { pf(*.. CS/C++ 2022. 1. 18. 뇌를 자극하는 C++ STL : 3장. 함수 객체 내돈내고 내가 공부한 것을 올리며, 중요한 단원은 저 자신도 곱씹어 볼 겸 가볍게 포스팅하겠습니다. 1) 3장. 함수 객체 함수 객체는 함수처럼 동작하는 객체이다. 이는 () 연산자를 오버로딩한 객체이어야 한다. 또한 함수 객체를 Funtor라고 부르기도 한다. 함수를 두고 왜 함수객체를 사용하는 것 일까? 함수 객체는 근본이 객체이다. 멤버 변수와 멤버 함수를 가질 수 있고, 함수 객체의 signature가 같더라도 객체 타입이 다르다면 다른 타입으로 인식한다. 또한 인라인 될 수 있기에 일반 함수보다 빠르다. 다음 코드를 통해 알아보자. #include using namespace std; class Adder { int m_total; public: explicit Adder(int n = 0) .. CS/C++ 2022. 1. 18. 뇌를 자극하는 C++ STL : 2장. 함수 포인터 내돈내고 내가 공부한것을 올리며, 중요한 단원은 저 자신도 곱씹어 볼겸 가겹게 포스팅 하겠습니다. 1) 2장. 함수 포인터 함수 포인터는 함수의 주소를 저장하는 변수이다. 함수의 이름이 주소인것 또한 C언어 공부할때 배운것이 생각난다. 정적 함수 호출 " data-ke-type="html"> HTML 삽입 미리보기할 수 없는 소스 - 정적함수 : 전역함수, namsspace내의 전역함수, static 멤버함수 다음 코드는 정적함수를 호출하는 방식이다. #include using namespace std; void Print(int n) { cout HTML 삽입 미리보기할 수 없는 소스 - 클라이언트가 서버를 호출하면 call, 서버가 클라이언트를 호출하면 callback - 서버가 여러 클라이언트에 의.. CS/C++ 2022. 1. 18. 이전 1 2 3 4 5 다음