목록분류 전체보기 (341)

수학과의 좌충우돌 프로그래밍

[C++] stl container set, multiset

이번 포스팅에서는 C++ stl container인 set과 mutiset에 대해서 알아보도록 하겠습니다. set set 은 데이터를 저장할 수 있는 container입니다. 가장 기본적인 container와 다른 점은 자동으로 정렬이 된다는 점입니다. 새로운 값이 삽입, 삭제 될 때마다 이 정렬 상태를 유지하고 있어야 하므로 set 은 기본적으로 binary search tree로 구현이 되어 있습니다. set 선언 set 을 사용하기 위해서는 헤더 파일을 포함해야합니다. #include 그 후에는 보통 container들과 마찬가지로 다음과 같이 선언할 수 있습니다. set 이름; int 자료형을 저장할 s라는 이름의 set을 만들기 위해서는 다음과 같이 선언해줍니다. set s; 선언 시, 어떠한 ..

알고리즘/C++ 2020. 4. 14. 17:22
[git] 한글 깨짐 현상 해결

git 에서 한글 깨짐이 발생하는 경우가 있습니다. git status 를 통해서 상태를 확인할 때 다음과 같이 한글이 깨져서 나옵니다. "\354\204\254\354\227\260\352\262\260\355\225\230\352\270\260.cpp" 이러한 현상이 발생하는 이유는 기본적으로 일반적이지 않은 문자는 탈출문자로 인식하여 \ 를 붙여주기 때문입니다. 따라서 이 설정을 꺼주면 정상적으로 한글이 보이는 걸 확인할 수 있습니다. 해당 기능을 core.quotepath 에서 담당하게 되는데 따라서 이를 false로 꺼주면 됩니다. git config --global core.quotepath false 다시 git status로 확인해보면 정상적으로 한글이 나오는 걸 확인할 수 있습니다. 섬연..

git 2020. 4. 7. 17:40
[React] react의 네비게이션, react-router-dom

react-router-dom 설치 react 의react-router-dom에 대해서 알아보도록 하겠습니다. react-router-dom 은 네이게이션을 만들어주는 패키지로서 별도의 설치가 필요합니다. 다음과 같이 npm을 설치를 진행합시다. npm install react-router-dom 기본적인 설명은 저번 시간까지 진행하였던 영화목록 프로젝트에 이어서 진행을 하도록 하겠습니다. https://ssungkang.tistory.com/entry/React-Axios-%EC%99%80-CSS react-router-dom을 적용하기 위해 기존의 코드를 약간 수정하고 넘어가겠습니다. 우선 디렉토리 구조를 변경해주었습니다. src 안에 components 와 routes 를 만들고 routes 안에는..

웹프로그래밍/React 2020. 4. 1. 23:24
[Algorithm] 불안정정렬 sort, 안정정렬 stable_sort

안정 정렬와 불안정 정렬 우선 안정정렬와불안정정렬이 무엇인지 알아봅시다. 안정정렬은 동일한 값에 대해 기존의 순서가 유지되는 정렬을 말하며 불안정정렬은 반대로 동일한 값에 대해 기존의 순서가 뒤바뀔 수 있는 정렬입니다. 아래 그림을 보며 이해를 해봅시다. 기존의 숫자배열은 스페이스 7, 하트 5, 하트 2, 스페이스 5로 구성되어 있습니다. 이를 숫자에 대하여 오름차순으로 정렬한다고 생각해봅시다. 이 때 안정정렬을 하게 되면 앞에 존재하던 하트 5와 뒤에 존재하던 스페이스 5의 순서는 바뀌지않음이 보장됩니다. 반대로 불안정정렬을 보도록 하겠습니다. 이 경우에는 하트 5와 스페이스 5의 순서가 바뀌었지만 불안정이라고 해서 항상 바뀌는 것은 아닙니다. 바뀔 수 도 있고 바뀌지 않을 수 도 있습니다. C++의..

알고리즘/이론 2020. 3. 25. 21:20
[MySQL] 사용자 목록, 추가, 제거 및 권한 부여, 제거

db를 사용하면 사용자를 생성하고 각 사용자에 맞게 권한을 부여하는 것이 중요합니다. 권한은 단순히 스키마, 테이블에 대한 권한 부터 여러 기능에 대한 권한까지 다양하게 부여할 수 있습니다. 해당 포스팅은 mysql을 설치한 후 진행해야 되므로 아직 설치가 안되어있다면 설치 후 진행하시길 바랍니다. MacOS에서 MySQL 설치 [MySQL] MacOS 에서 MySQL 설치 제목 그대로 MacOS 에서 MySQL 을 설치하는 방법이니 다른 운영체제를 사용하시는 분들은 다른 글을 참고해주시면 감사하겠습니다. mysql 을 설치하는 두 가지 방법에 대해서 알아보도록 하겠습니다. 해당 포스팅.. ssungkang.tistory.com 저는 MacOS를 사용하고 있으므로 다음과 같이 설치를 진행하였습니다. 서버..

데이터베이스/MySQL 2020. 3. 4. 01:27
[Django] Serializer Custom Field, SerializerMethodField

django rest framework 를 사용하여 rest API 서버를 만들다보면 serializer 를 사용하지 않을 수 가 없습니다. 기본적으로 model 에 등록된 필드 값들은 Meta 클래스에 추가줌으로서 다뤄줄 수 있지만 커스텀 필드를 정의하는데 있어서는 새로운 방법이 필요합니다. 이번 포스팅에서는 간단하게 Custom Field 만드는 법에 대해서 알아보도록 하겠습니다. SerializerMethodField SerializerMethodField 를 사용하여 쉽게 커스텀 할 수 있습니다. SerializerMethodField 는 read-only field 로 값을 저장하거나 수정할 때는 사용되지 않고 조회할 때만 사용합니다. 인자로는 method_name 로 해당 필드값에 대해 정의하..

웹프로그래밍/DRF 2020. 2. 26. 15:14