본문 바로가기

CS

(52)
패스트캠퍼스 챌린지 최종 후기 [강의] 다음은 패스트 캠퍼스 알고리즘 / 기술면접 완전 정복 올인원 패키지 수강 후기 및 회고 내용입니다. 패스트 캠퍼스 세 번째 챌린지가 종료되다❗❗ 어느덧 챌린지를 진행한지 2개월 훌쩍 지나갔다. 시간은 왜이렇게 빨리 지나가는 것일까??👀 작년 하반기에도 챌린지를 통해 데이터 분석을 비롯해서 클라우드, DevOps, 알고리즘까지 덕분에 정말 다양하게 배울 수 있었다. 이번 챌린지도 좋은 기회로 참가하게 되었는데 이번 수강 후기 작성을 끝으로 끝이 나게 됐다. 그동안 바쁘다는 핑계로 미루고 미루었던 회고와 함께 수강 후기를 남겨본다. 첫 번째 챌린지, 파이썬을 활용한 데이터 전처리 LevelUP 올인원 패키지 / '21. 9. 6.~10. 5. 특징 간 상관성이란 회귀 모델, 신경망, SVM과 같이 ..
패스트캠퍼스 챌린지 50일차 [강의] 다음은 패스트 캠퍼스 알고리즘 / 기술면접 완전 정복 올인원 패키지를 통해 학습 및 정리한 내용입니다. 알고리즘 챌린지 끝 오늘부로 알고리즘 챌린지가 끝이났다. 2개월 남짓이었는데 자료구조에서부터 기초/고급 알고리즘까지 다양하게 배울 수 있는 시간들이었다. 코딩 테스트를 준비하면서 자료구조와 알고리즘을 공부하기 시작했는데 한, 두문제만 풀면 하루가 훌쩍 지나갔다. 그래도 알고리즘이 나한테 잘 맞았는지 하루 왠종일 공부해도 질리지 않았고 집중할 수 있었다. 그리고 패스트 캠퍼스 강의가 있었기에 조바심 내지 않고 천천히 배워나갔다. 현재 내 수준은 백준 기준으로 실버 2~3 정도 될 것 같다. 자료구조와 알고리즘을 전부 배웠어도 어느정도 강의에 의존했기 때문에 이제는 스스로 문제를 계속해서 풀어나가..
패스트캠퍼스 챌린지 49일차 [강의] 다음은 패스트 캠퍼스 알고리즘 / 기술면접 완전 정복 올인원 패키지를 통해 학습 및 정리한 내용입니다. 어느덧 챌린지도 내일이면 마지막이다. 적어도 강의를 2번 반복해서 듣는 것까지 생각하고 있어서 이번 챌린지가 끝나면 강의를 참고하되 스스로 문제를 풀어보는 시간을 가지려고 한다. 이번 분기의 목표는 백준 기준으로 골드 1이기 때문에 챌린지를 했을 때보다 더 많은 노력이 필요하다. 그리고 아이패드를 구입했는데 노트를 작성하면서 수도코드를 작성해보려고 한다. 아직은 익숙하지는 않지만 머리로 계산하면서 하는 것과 직접 작성하면서 계산하는 것은 확실히 차이가 있다. 생각했던 로직과 실제 로직이 다른 경우가 많은데 수도 코드를 작성하면서 생각했던 로직을 정확히 구현해내는 연습을 꾸준히 해보자! 백준 1..
패스트캠퍼스 챌린지 48일차 [강의] 다음은 패스트 캠퍼스 알고리즘 / 기술면접 완전 정복 올인원 패키지를 통해 학습 및 정리한 내용입니다. 코딩 테스트에서 주요 문제는 탐색에서 출제된다고 한다. 그리고 탐색은 BFS/DFS나 재귀 함수 중심으로 구현되는데 그 유형은 다음과 같다고 한다. 첫 번쨰로 구현에 초점을 맞춘 유형으로 BFS/DFS, 백트래킹에 조건이 있고 이러한 조건에는 부분 상태 탐색(위치 이동, 수)과 전체 상태 탐색(전체 map)으로 구분된다고 한다. 부분 탐색의 경우 상태에 대한 체크 함수를 정의하거나 전체 상태 탐색의 경우 N차원 배열을 조정하는 방법을 통해 해결할 수 있다고 한다. 그 외에는 Flood Fill과 트리 순회 유형이 있다. 두 번째로 알고리즘 지식을 요구하는 유형이다. 위상 정렬이나 최소 신장 트..
패스트캠퍼스 챌린지 47일차 [강의] 다음은 패스트 캠퍼스 알고리즘 / 기술면접 완전 정복 올인원 패키지를 통해 학습 및 정리한 내용입니다. 오늘도 2차원 배열 문제를 풀이하였다. 개인적으로 풀이했던 코드는 계속 오답처리가 되어 강의를 참고하여 코드를 작성하였다. 이 과정에서 VSCode 환경 설정을 통해 input과 output 파일을 생성하여 데이터 입력을 간소화하였다. 백준 14620번 문제 : 꽃길 강의에서는 각 좌표별로 넘버링하여 문제를 풀이하였다. 넘버링이란 각 배열의 번호를 부여하는 것으로 좌측에서 우측으로 상단에서 하단으로 번호를 부여하는 방식이다. 이를 위해 N*N을 범위로 하여 반복문을 사용하였고 세개의 꽃을 심기 위해 삼중으로 반복문을 사용하였다. 그리고 ck 함수를 정의하여 넘버링된 번호에서 x, y 좌표로 변..
패스트캠퍼스 챌린지 46일차 [강의] 다음은 패스트 캠퍼스 알고리즘 / 기술면접 완전 정복 올인원 패키지를 통해 학습 및 정리한 내용입니다. 오늘은 개인적인 사정으로 한 강의만 듣고 끝냈다. 오늘 문제는 2차원 문제였는데 처음에 문제를 잘못 해석하여 시간이 좀 더 걸렸다. 수학적으로 풀어내는 것도 중요하지만 먼저 문제에 대한 객관적인 정의가 반드시 필요하다. 잘못된 방향은 해답으로부터 더 멀어질 뿐이다. 나는 출력에 대한 고정관념으로 문제에서 요구하는 포인트를 잘못 해석했다. 문제에서 요구하는 출력을 그대로 따라야 한다고 생각했는데 그게 바로 오류였다. 문제에서 요구했던 것은 늑대로부터 양을 보호하기 위한 울타리의 위치를 선정하는 것이다. 습관대로 예제 케이스를 참고하였고 입력과 출력에 대한 부분을 어떻게 코드로 구현할 수 있을까에..
패스트캠퍼스 챌린지 45일차 [강의] 다음은 패스트 캠퍼스 알고리즘 / 기술면접 완전 정복 올인원 패키지를 통해 학습 및 정리한 내용입니다. 오늘은 인덱스 메소드의 활용과 파싱 기능을 익혀보았다. 깔끔하게 코드를 구현할 수 있어 좋았고 다양한 기능에 활용할 수 있는 부분이라 흥미있게 배웠다! 백준 16675번 문제 : 두개의 손 이번 문제 풀이에서는 데이터의 관계를 인덱스로 표현하는 방법에 대해서 배웠다. 여기서 데이터는 가위, 바위, 보인데 인덱스로 상대적으로 표현하여 분기문에 조건을 적용해주었다. 성능은 같았지만 확실히 코드도 짧아지고 가독성 또한 좋아졌다. 백준 17413번 문제 : 단어 뒤집기 2 요구사항에 맞춰 문자열을 가공하는 문제로 이를 파싱이라 부른다. 파싱은 구문 분석으로도 불리며, 페이지에서 내가 원하는 텍스트(문..
패스트캠퍼스 챌린지 44일차 [강의] 다음은 패스트 캠퍼스 알고리즘 / 기술면접 완전 정복 올인원 패키지를 통해 학습 및 정리한 내용입니다. 챌린지를 한지 44일째이다. 예전에는 알고리즘만 공부해도 재밌었는데 요즘은 약간씩 지루해지는 느낌이 없지 않아 있다😅 그래도 현재 목표로 두고있는 플레티넘에 도달할 때까지 계속해서 문제를 풀어갈 예정이다. 사실 지루해지기 보다는 스타일에 변화를 주지 못해서 그런 것 같다. 문제 푸는 게 익숙해지다보니까 아무 생각없이 풀게 되는데 이게 일정 수준에 머물러 있기 때문에 그런 것 같다. 지금까지 문제를 푸는 방법, 알고리즘의 구현에 대해서 적응을 했다면 앞으로는 각 알고리즘별로 시간 복잡도 계산을 비롯해서 더 구체적으로 풀기 위한 노력들을 하나 둘 씩 해나가보자. 백준 2480번 문제 : 주사위 세..