Code KATA
오늘치의 알고리즘 코드카타를 풀이하고 정리하였다.
https://iiblueblue.tistory.com/116
[2024.12.30] 제일 작은 수 제거하기
문제 설명정수를 저장한 배열, arr 에서 가장 작은 수를 제거한 배열을 리턴하는 함수, solution을 완성해주세요. 단, 리턴하려는 배열이 빈 배열인 경우엔 배열에 -1을 채워 리턴하세요. 예를들어 ar
iiblueblue.tistory.com
추가적으로 시간이 30분 정도 남아 다른 문제도 하나 더 풀어봤다.
https://iiblueblue.tistory.com/117
[2024.12.30] [PCCP 기출문제] 1번 / 동영상 재생기
문제 설명당신은 동영상 재생기를 만들고 있습니다. 당신의 동영상 재생기는 10초 전으로 이동, 10초 후로 이동, 오프닝 건너뛰기 3가지 기능을 지원합니다. 각 기능이 수행하는 작업은 다음과 같
iiblueblue.tistory.com
데일리 루틴에 맞춰서 풀어가는 문제들은 연습을 하는 느낌이었다면 오늘 추가적으로 푼 문제는 진짜 코딩 테스트 문제를 푼 것 같았다. 이런 문제가 처음이라서 조금 걸리긴 했지만 별로 어려움 없이 풀었다.
string으로 들어오는 자료형을 사용하기 좋게 어떻게 가공하느냐가 중요했던 것 같다.
C++
2주차 강의 2-1, 2-2, 2-3을 수강하였다. 생각보다 많이 까먹어서 듣고 정리할 부분들을 추려냈다.
- 얕은 복사 VS 깊은 복사
- 스마트 포인터
- 댕글링 포인터, 더블 프리
- 함수 오버로딩 VS 함수 오버라이드
- 템플릿
- STL
- 향상된 for문
- 반복자(Iterator)
Quest
- [3번 과제] CH 2 템플릿 및 STL
- [4번 과제] CH 2 C++ Summary
오늘은 3번 과제를 수행하고 깃허브에 업로드하였다.
https://github.com/iiblueblue/NBC_Template_STL.git
GitHub - iiblueblue/NBC_Template_STL: [3번 과제] CH2 템플릿 및 STL
[3번 과제] CH2 템플릿 및 STL. Contribute to iiblueblue/NBC_Template_STL development by creating an account on GitHub.
github.com
내용 자체가 완전히 익히고 있는 내용이 아니어서 그런지 구현하는데 그냥 쉽지는 않았다. 구현하는 과정에서 두 가지 문제가 있었는데 하나는 헤더 파일과 구현 파일을 나누는 부분에서 그랬고 다른 하나는 resize 함수를 구현하면서 그랬다.
1. 헤더 파일(.h)과 구현 파일(.cpp)
이전 과제들과 마찬가지로 헤더 파일(.h)과 구현 파일(.cpp)를 나누어 구현하려고 했다. 하지만 템플릿 클래스는 파일을 나누는데 더 알아야할 규칙이 있는지 계속 오류가 나면서 실행되지 않았다.
결국 헤더파일 안에 구현부까지 함께 구현하였는데 혹시 다른 방법이 없는지 확인해봐야 겠다.
2. resize 함수
다른 미션들을 구현하고 마지막까지 구현하고 있던 것이 resize 함수이다. 찾아보고 똑같이 쓰고 싶지 않아서 그림을 그리며 포인터가 어떻게 동작하는지 다시 생각해봤다.
그래도 그림 그리면서 잘 풀어냈고 결과적으로는 모든 기능 구현하여 제출하였다.
'TIL' 카테고리의 다른 글
2025.01.03 (0) | 2025.01.03 |
---|---|
2025.01.02 (0) | 2025.01.02 |
2024.12.27 (0) | 2024.12.27 |
2024.12.26 (0) | 2024.12.26 |
2024.12.24 (0) | 2024.12.24 |