💥 코딩 테스트 오늘은 코딩테스트를 진행하여 팀을 나누는 날이 왔다. 문제는 예상보다 더 쉽지 않았다 무조건 맨 앞으로 갈것같은데 영 느낌이 좋지 않다. 문제는 탐색을 하는 위주로 나왔고 그중 DFS 를 하여 풀수있는 알고리즘이 있었다. 문제를 보고 알고리즘을 생각해 낸 것이 내심 기분이 좋았다. 💥 생각보다 중요한 전체 탐색 어제 브루트 탐색을 통해 전체 탐색또한 알고리즘이 있다는 것을 알게 되었다. 전체 탐색을 하는 알고리즘이 얼마나 중요한지 잘 모르고 그냥 그렇게 넘어갔는데 생각보다 굉장히 중요한 내용이였다. 전체 탐색은 문제의 구현까지 연결되는데 내가 그것을 잘 못한다는게 너무 아쉽다 ▶ 메모이제이션 DFS 를 구현하는 과정에 메모이제이션을 사용하려고 했는데 도저히 이해가 가지 않았다. 3차 배열..
항해99/🕐 2주차
💥 전체 탐색 (브루트포스 알고리즘) 브루트 포스 : 무식한 힘으로 해결 할 수 있다. 완전 탐색 알고리즘 즉, 가능한 모든 경우의 수를 모두 탐색하면서 요구 조건에 충족되는 결과 만을 가져온다. 이 알고리즘의 강력한 점은 예외 없이 100%의 확률로 정답을 출력한다. 선형 구조를 전체적으로 탐색하는 순차 탐색, 비선형 구조를 전체적으로 탐색하는 깊이 우선 탐색과 너비 우선 탐색이 전체를 탐색하는 기본적인 도구이다. 브루트 포스는 여기서 BFS(너비 우선 탐색)과 관련이 깊다. Tip ) DFS(깊이 우선 탐색)은 백트래킹과 관련이 깊다 완전 탐색 알고리즘이 이렇게 이름으로 된지 몰랐다. 왜냐하면 그냥 모든 것을 검색하고 맞는지 확인만 하는 것이기 때문에 이런 알고리즘이 있었다는 사실조차도 몰랐다...노..
👅 오늘 학습한 내용 ▶ hash table map을 많이 사용하면서 hashmap을 정말 많이 사용했는데 기술매니저님의 질문에 말문이 막혔던것 때문에 새롭게 학습하기 시작했다 hashmap은 hashtable과 같은 것으로 자바에서는 separate chaining을 이용해 구현이 되어있다는 것을 알 수 있었다. hash의 장점을 그대로 사용하고 있기 때문에 삽입과 삭제, 색인또한 O(1)으로써 굉장히 빠른 속도를 보였다. 또한 hashset도 연결되어 궁금했었는데 신기하게도 hashset이 hashmap으로 구현되어 있었다. 그래서 결국 속도는 굉장히 비슷한것으로 나타났다. 👅 팀스터디 ▶ 다양한 풀이 방법 문제의 난이도가 점점 높아지면서 풀이의 방법이 다양해지기는 했지만 고민을 더해서 내보내기에는 ..
👐 티어가 올라가기 시작 ▶ 초반과 다른 난이도 초반에는 난이도가 어렵지 않았다. 논리적으로나 아니면 조금만 생각해봐도 풀 수 있는 문제로 구성이 되어있었다. 하지만 하루하루가 다르게 난이도가 급상승하는 것을 느낀다. 내일의 문제를 오늘 보는 편이 아닌데 팀 스터디 하시는 분들이 점점 어려워지는거 같다고 하셨다. 최근에 BFS 와 DFS를 이용한 코딩테스트를 공부하지 않았다면 오늘 문제는 풀지 못했을 것이다. 점점 어려워지는 난이도...점점 몸에 힘이 풀리는 중ㅋㅋ 👐 팀스터디 ▶ 다른 사람들은 안어려운가..? 다른 분들은 용캐 이리저리 잘 푸시는것 같다. 궁금한거나 풀면서 의아했던 점을 나누는걸 보면 고민이 드는 쪽은 다들 비슷비슷한거 같다. 하지만 이제 뒤로 가면 갈수록 문제를 아예 못푸는 날이 올것..
💐 강의 ● 다양한 자료구조 문제가 어렵지 않다보니 조금 다양한 생각을 해볼 수 있었다. 배열을 사용할지 자료구조를 사용할지 for문의 불필요한 탐색은 없는지 등등 생각을 좀 더 여러 방면에서 해보게 될 수 있는 시간이였다. 하지만 내일은 더 어려울 예정이라고 하니 더 걱정된다 💐 오늘의 팀스터디 ● 배울게 많군 확실히 사람들이랑 코테를 같이 푸니까 성능에 대한 생각을 많이 하게 된다. 코드의 간결성과 가독성 그리고 성능까지 평소에는 풀면 장땡이였는데 팀스터디를 시작하면서 성능에 대한 고민이 많아졌다. ● 기술 매니저님 기술 매니저님에게 물어보면 답을 알려주신다기 보다 생각해봐야할 방향이나 가고있는 방향을 제대로 잡아주는 경우가 많았다. 근데 문제가 그리 어렵지 않아서 물어볼게 많지 않았는데 내일부터 문..
- 오늘 진행된 강의에서 학습한 내용은 무엇인가요? - 이번 주 진행된 팀 스터디에서 얻은 인사이트는 무엇인가요? 💐 코테를 위한 강의 ● 1일차는 쉽다? 코테가 본격적으로 시작되었다. 그래도 풀어봤거나 오늘안으로 하기 쉬운 코드들로 이루어져 있어서 비교적 쉬웠다. 물론 딱히 알고리즘이나 자료구조를 사용해서 문제를 푸는 것이 아닌 다른 방식으로 문제를 풀기 때문에 쉬웠을것이다. 앞으로 얼마나 어려워질지 걱정이 된다 💐 정식으로 시작한 코테 팀 스터디 ● 팀 스터디 시작 역시 팀스터디는 생각보다 어렵다. 각자 본인이 작성한 코드를 올리고 사람들과 비교하는 것이 쉽지 않다. 다른 사람들의 코드를 읽는 것 그리고 자신의 코드를 리뷰하는 것은 상당히 번거롭고 어려운 일이다. 그리고 남의 코드를 선택하고 팀 코드..