728x90

프로그래밍 65

A Tour of C++ : 5장 필수적인 연산

. . 책 읽으면서 정리한 메모 5. 필수적인 연산 소개 : 필수적인 연산, 변환, 멤버 초기화 복사와 이동 : 컨테이너 복사, 컨테이너 이동 자원 관리 관례적인 연산 : 비교, 컨테이너 연산, 입력과 출력 연산, 사용자 정의 리터럴, swap(), hash ​ 5.1 소개 == 와 >, second 12.7i -> imaginary. 12.7i+47 = complex. (47,12.7) ​ 5.4.5 swap() 두 객체의 값을 뒤바꾸는 swap() 함수. 굉장히 빠르고 예외를 던지지 않는다고 가정. tmp=a, a=b, b=tmp 로 정의. ​ 5.4.6 hash 표준 라이브러리 unordered_map 해시테이블. ​ 5.6 조언 [3] 필수 연산자를 정의할 거면 모두 하거나, 아무것도 하지 않거나..

코딩인터뷰 퀘스천"메모+후기" 디자인(설계), 마무리

. . 책 읽으면서 메모했던 내용들 옮겨봅니다. ​ - 챕터21 디자인(설계) 디자인 패턴 - 특정 종류의 문제를 해결하기 위함 - 문제를 이해하고 사용할 패턴을 좁힘. - 서로 다른 패턴들 사이의 관계성 찾고, 안정적으로 사용할 패턴들과 변경 사항들 결정. ​ 리팩토링 외부동작 변경 없이 내부 구조 변경. - 여러 디자인패턴 공부로는 좋은 설계자가 되는데 불충분. - 패턴들을 이해하고 장점을 더 활용할 수 있어야 좀 더 이해하기 쉽고 수정하기 편하도록 소프트웨어 내부 구조를 변경. ​ 패턴 - 생성 패턴 : 객체의 생성을 다룸 Factory, Abstract Factory, Builder, Prototype, Singleton - 구조 패턴 : 클래스들이 커다란 구조를 형성하기 위해 결합될 수 있는 방..

코딩인터뷰 퀘스천"메모" 탐욕,분할정복 알고리즘, 동적 계획법, 복잡도 클래스

. . 책 읽으면서 메모했던 내용들 옮겨봅니다. ​ - 챕터17 탐욕 알고리즘 체스 게임에서 의사 결정은 향후의 수에 대해서도 고려. 반면 테니스는 그 순간 최선이라고 생각하는 현재 상태를 기반으로 행동. Greedy Strategy 는 테니스에 적합. ​ 직관적이고 간단하며 이해하기 쉽고 코드화가 용이함. 지역적 최선이 전체 문제의 해라는 보장이 없다. ​ 응용 : 선택정렬, 위상정렬. 힙 정렬. 허프만 부호화 압축 알고리즘. 동전 교환 문제. 환전. 작업 스케쥴 알고리즘. ​ 챕터18 분할 정복 알고리즘 탐욕 전략으로 해결되지 않는 문제들 주 몇몇은 Divide & Conquer 로 해결 가능. 재귀 기반, 문제를 직접 해결할 수 있을 정도로 간단한 문제가 될 때까지 동일한 유형인 둘 이상의 하위 문..

코딩인터뷰 퀘스천"메모" 검색,해싱,문자열 알고리즘

. . 책 읽으면서 메모했던 내용들 옮겨봅니다. ​ - 챕터11 검색 불규칙 선형 검색 : 정렬되지 않아 순서를 모르는 배열. 최악의 경우 모든 요소 검사 O(n) 정렬/규칙 선형 검색 : 정렬된 배열에서 검색. O(n) 이진 검색 : 사전 검색처럼. 인접한 방향으로 추적. O(logn) 심볼 테이블 그리고 해싱 : 13장 심볼 테이블, 해싱 챕터 참조. 문자 검색 알고리즘 : 15장 문자열 알고리즘 챕터 참조. ​ 챕터14 해싱 시간 복잡도 O(1) 로 만들기 위해. 해싱 구성 요소 - 해시 테이블 (Hash Table) - 해시 함수 (Hash Functions) : 해시값 충돌 최소화/균일분포, 쉽고 빠른 연산, 모든 키의 정보로 해싱 적재 인수(Load Factor) : 저장데이터 수 / 해시테이..

코딩인터뷰 퀘스천"메모" 그래프 알고리즘, 정렬

. . 책 읽으면서 메모했던 내용들 옮겨봅니다. ​ - ​ 챕터9 그래프 알고리즘 서울에서 뉴욕까지 가는 가장 빠른 노선은? 같이 객체간의 관계에 대한 정보 자료구조가 그래프. 정점 노드들의 집합 V와 간선(정점의 쌍)들의 집합 E를 사용하여 (V, E)로 나타냄. Directed Edge : 방향성을 가지는 간선 Undirected Edge : 방향을 가지지 않은 간선 Directed Graph Undirected Graph ​ 그래프 어플리케이션 전자 회로 컴포넌트간 관계 표현, 운송 네트워크, 컴퓨터 네트워크, 데이터베이스 ​ 챕터10 정렬 정렬 알고리즘의 분류 기준 비교 횟수(최선은 O(nlogn), 최악은 O(n^2) 복잡도) 도치(값 교환) 횟수, 메모리 사용, 반복, 안정성, 작용성 ​ 비교..

언리얼엔진4 in 24Hours - 3~4Hours

. . 책 읽으면서 메모한 내용들 옮겨봅니다. Unreal Engine4 Game Development in 24Hours Hour 3 좌표계, 트랜스폼, 유닛 그리고 구조 카테시안 좌표계에대한 이해와UE4 트랜스폼과의 연관성 MRS (이동, 회전, 크기) Actor를 위한 그리드 시스템&측정 씬 구성과 구조 액터 그룹화, 레이어, 부착하기 ----- 3차원 좌표계 = 카테시안 좌표계(Cartesian coordinates) ​ 트랜스폼 다루기 대화형 변환 도구. 뷰포트에서 스페이스바로 도구 토글. 이동 -> 회전 -> 크기 -> 이동 -> ... ​ 단위. 1언리얼 단위(Unreal Unit)은 현실 세계의 1Cm 기본 캐릭터 설정은 6피트 = 180uu = 180Cm ​ 격자 단위. Grid Unit..

Unreal 엔진 2019.10.15

코딩인터뷰 퀘스천"메모" 프로그래밍 기초, 알고리즘, 연결 리스트, 스택

. . 책 읽으면서 메모했던 내용들 옮겨봅니다. 챕터1 프로그래밍 기초 / 12, 13 프로그래밍 테크닉, 기초 문제 -네임 맹글링(Name mangling) C컴파일러는 언더바’_’ 를 붙여 함수나 심볼을 연결. main() 함수는 _main() 심볼명, int counter; 는 _counter 심볼명에 링크. C++ 컴파일러는 함수 오버로딩 메커니즘. 단순 언더바를 붙이지 않고, 링커가 ‘맹글링’을 사용. 네임 맹글링 : C++ 컴파일러가 동일한 이름의 함수, 변수들을 라인 식별자, 인자 크기 등의 확장 정보들을 가진 어떤 명칭(유일 심볼명)으로 변경, 연결하기 위한 메커니즘. ​ 함수명 맹글링 : @ 변수명 맹글링 : @@ ex) int Test(int a, int b) => _1add@8 ex)..

[책] 코딩인터뷰 퀘스천 (2015출간)

. . 정식으로 퇴사한지 1주일 정도 넘었습니다. 회사다닐 때보다 더 여러가지 바쁘게 하고 있는 탓인지 시간이 정말 빠르게 흘러가네요. 벌써 10월 중순이라니. ​ 너무 멀지 않은 미래에 구직활동겸 인터뷰 준비도 다시 해야하고, 이번 기회에 기본기에 대한 것들도 한 번 공부해보자는 생각에 코딩인터뷰 책도 한 권 보기 시작했습니다. 사실 원래 보려고 했던 2017년 출간된 다른 서적을 구하지못해서 구하기 전까지 훑어보자는 생각으로 구해온 책입니다. ​ 책의 저자는 아마존 수석 개발자, 하이데라바드의 Microsoft, IBM 연구소 등에서 근무한 경력이 있고 컴퓨터 과학 석사까지 마친 엘리트 느낌의 개발자입니다. ​ 책의 구성은 마치, 정보처리 계통의 자격증 시험 교과서같은 느낌입니다. 그만큼 정보처리 기..

[책]언리얼엔진4 in 24Hours - 1~2Hours

. . 언리얼 엔진 입문 공부 시작했습니다. 여러 좋은 책들이 있었는데, 가볍게 훑어보기 좋은 책을 찾다가 이 책으로 골랐습니다. 2017년 10월 출간된 책이라 2년 됐지만, 기본적인 내용들은 동일한 것 같습니다. ​ 24시간에 끝내는 코스라는데, 2시간 정도 따라했더니 딱 2챕터 끝났네요. 스터디노트 정리해서 올려봅니다. Unreal Engine4 Game Development in 24Hours HOUR 1 언리얼 엔진 소개 - 뷰포트, Ctrl + Alt 드래그 하면 다중 선택 가능. 콘텐츠 브라우저, 엔진 콘텐츠 표시 ​ ​ ​ ​ 뷰포트에서의 이동. 3D 모델링 애플리케이션과는 다르게, 하나의 에셋 주위가 아니라 매우 큰 영역(레벨)을 쉽게 이동하는 것이 핵심이 되도록 동작. ​ ​ PIE (..

A Tour of C++ : 4장 클래스

. . 4. 클래스 ​ 4.1 소개 4~7 장은 C++의 추상화 지원, 자원 관리 훑어봄 - 4장 : 새로운 타입(사용자 정의 타입) 정의하고 사용방법 가볍게. 구체 클래스(Concrete class), 추상 클래스(abstract classes), 클래스 계층 구조(class hierarchies) 기본 속성, 구현 기법, 언어 기능 - 5장 : 생성자, 소멸자, 대입 연산 등. C++ 특별한 의미 연산자 설명. 객체의 생애 주기와 자원관리 지원 방법. - 6장 : 타입 파라미터화, 타입 알고리즘 파라미터화= 템플릿(template). 템플릿 함수, 함수 객체로 일반화 - 7장 : 제네릭 프로그래밍 개념, 기법, 언어 기능.템플릿 인터페이스 표현, 설계 가이드 컨셉 정의, 사용 방법. 일반적이고 유연한..

728x90
반응형