본문 바로가기

개발62

[C++] 문자열 substr와 코딩 테스트에서의 활용 앞서 글에서 C++에서 특정 문자를 기준으로 문자열을 자르는 방법에 대해 다루었습니다 (링크). 문자열은 코딩 테스트에서 주요한 카테고리 중 하나로, 그 예시로 카카오 공채 기출문제를 보면 문자열을 다루는 문제들이 많이 나옵니다. 문자열 압축, 괄호 변환, 가사 검색 이번에는 C++의 substr 함수에 대해 다루어 보려고 합니다. C++ 공식 문서에는 다음과 같이 적혀 있습니다: 현재 문자열의 부분 문자열을 기준으로 새로운 문자열을 생성 및 초기화하고 이를 반환한다. string 변수형의 test 라는 변수가 있고, 내용은 "We study coding test.". 라고 합시다. (string test = "We study coding test.";) test.substr(인자 1, 인자 2) 와 같.. 2021. 4. 11.
[C++] 코딩 테스트에서 편하게 사용할 수 있는 문자열 자르기 저는 코딩 테스트에서 주로 C++을 사용합니다 (정말 가끔 Python도 사용하긴 합니다). 대학에서 1학년때부터 쭉 커리큘럼 상 C++이 중심이 되기도 했고 (객체지향프로그래밍, 자료구조, 알고리즘이 C++에 기반하였습니다), 이미 많이 익숙해져 있기 때문입니다. 보통 비전공자 출신이시거나 코테를 처음 준비하신다고 생각하면 저는 Python을 추천드립니다. 문법 익히는 난이도도 훨씬 쉽고, 문자열을 다루거나 각종 변수를 다루기에 훨씬 간단하며 작성하는 코드의 길이도 훨씬 짧습니다. 반대로 전공자라면, 저는 Python 이전에 C 혹은 C++를 먼저 공부해야 한다고 생각합니다. 컴퓨터과학 전공자 입장에서 C를 모른다는 것은 많은 부분을 이해할 수 없다는 말이 됩니다 (임베디드, 포인터, 메모리 주소 개념.. 2021. 3. 24.
[Git] Fork한 Repository 최신 내용 가져오기 GitHub에서 코딩 테스트 스터디에 최근 참여하고 있습니다. (학교 과제나 시험기간 때문에 바쁠 때에는 부득이하게 참여하지 못 하기도 합니다 ㅠㅠ) 그러면서 지금까지 단순히 온라인 저장소로만 사용했던 GitHub을, 다른 사람의 repository에 commit하는 방법을 간접적으로 접해보게 되었습니다. 제가 코딩테스트 스터디를 함께하고 있는 GitHub 주소는 다음과 같습니다: 링크 위 repository를 fork한 후, 시간이 조금 지나게 되면 아래와 같은 메세지를 볼 수 있습니다. 즉, 제가 fork한 repository가 원본에 비해 몇 단계 뒤쳐져 있다는 말입니다. 이를 최신 상태로 유지하려면, 원본 repository에서 최신 사항을 가져와야 합니다. 간단히 비유하자면, 우리가 쓰고 있는 .. 2020. 11. 5.
3.2 경사 하강법 *본 글은 "Do It! 정직하게 코딩하며 배우는 딥러닝 입문", 박해선 저, 이지스 퍼블리싱을 참고하여 작성하였습니다. GitHub Link: 링크 경사 하강법이란? 위에 그렸던 산점도에 가장 잘 맞는 직선을 그린다면, 왼쪽 아래에서 오른쪽 위로, 가운데를 지나는 직선을 그리게 될 것입니다. 위는 입력 데이터 1개의 특성에 대한 직선을 설명한 것입니다. 하지만 저희가 다룰 특성은 총 10개죠. 11차원 그래프는 그릴 수도 없지만, 11차원 공간을 가로지르는 초평면 (hyperplane)은 상상하기도 어렵습니다. 따라서 보통 특성 1, 2개 정도를 사용하여 2, 3차원 그래프로 데이터를 나타내게 됩니다. 이렇게 나타내게 되면 위에서 그러했듯 데이터에 대한 직관을 쉽게 얻을 수 있습니다. 낮은 차원에서 얻.. 2020. 10. 8.
3.1 선형 회귀 *본 글은 "Do It! 정직하게 코딩하며 배우는 딥러닝 입문", 박해선 저, 이지스 퍼블리싱을 참고하여 작성하였습니다. GitHub Link: 링크 선형 회귀 (linear regression)은 머신러닝 알고리즘 중 가장 간단하면서도 딥러닝의 기초가 됩니다. 선형 회귀의 주요 관심사는 y = ax + b와 같은 일차식이 있을 때, x값과 y값을 가지고 기울기 (a)와 절편 (b)값을 찾는 것입니다. 주어진 좌표들이 있고, 일차식 y가 초기값 a와 b를 가진다고 합시다. 이 때, 일차식 y가 주어진 좌표들을 모두 지나려면, a값과 b값을 몇 차레 조정해 줄 필요가 있을 것입니다. 이 때 만드는 일차식 y들을 '선형 회귀로 만든 모델' 이라고 하며, 그 중 맨 마지막에, 주어진 좌표들을 모두 지나게 되는.. 2020. 10. 7.
MatPlotLib 라이브러리 소개 MatPlotLib에 대해 공부하면서 작성하였습니다. 영상은 YouTube의 youtu.be/6rKe2IEIu8c를 참고하였습니다. GitHub Link: 링크 Matplotlib은 Python에서 사용할 수 있는 라이브러리 중 데이터를 시각화 하기에 가장 좋고, 대중적으로 쓰이는 라이브러리입니다. 이것 역시 machine learning 분야에서 numpy, pandas와 더불어 많이 쓰이고 있습니다. 공식 사이트: matplotlib.org/# Matplotlib: Python plotting — Matplotlib 3.3.2 documentation matplotlib.org 이하는 제가 영상을 참고하여 작성한 .ipynb 파일을 GitHub에 올린 것을 그대로 옮긴 것입니다. 2020. 10. 5.