전체 글
-
리트코드 Top Inteview 150 후기Coding Test 2024. 7. 7. 00:28
리트코드는 알고리즘 문제 사이트이다.그중 좋은 문제 150개를 엄선해서 모아놓은 분류가 있는데 이게 Top Interview 150이다.이거를 생각날 때마다 하나씩 풀다보니 어느새 다풀었다. 누구는 알고리즘이 현업에서 쓸 데 없다고도 하고누구는 알고리즘 잘하는 사람이 현업 개발 못하는걸 본 적 없다고 한다. 현업 개발을 많이 겪진 못했지만 지금까지 경험으로 보면일단 도메인을 많이 아는게 중요하다. 선임 개발자분들을 보면 개발 40 디버깅 40 회의 20의 비중을 두고 있다.디버깅 비중이 크다.예상치 못한 예외케이스가 발생할 수 있다는걸 알기 위해서는 일단 도메인에 대한 지식이 필요하다. 그리고 미처 처리하지 못한 예외케이스가 발생해 디버깅을 해야하는 경우에도 문제 발생 원인을 파악할 때 도메인 지식이 필..
-
9개월간의 개발자 취업 여정취업 여정 2024. 4. 15. 16:32
취업 여정23년 8월 - 카이스트 전산학 비학위과정 입학 23년 12월 - 카이스트 전산학 비학위과정 수료 24년 1월 - 연계 기업 채용 프로세스 진행 24년 2월~3월 - 이력서 작성 및 지원 24년 4월 - 최종 합격 간단히 말해서, 9개월 중 5개월은 부트캠프를, 1개월은 연계 기업 채용 프로세스를, 나머지 3개월은 본격적인 취준을 했다. 최종 합격의 맛최종 합격을 받고 난 후 가장 처음으로 느꼈던 감정은 해방감이었다. 높은 금리로 인한 투자 저하 및 AI의 급성장으로 시장에서 개발자(특히 신입)를 찾는 수요는 줄어든 지 오래였고, 시장에 진입한 개발자 취준생들은 여전히 과포화상태였다. 공급 포화에 수요 급감. 한마디로 정말 개발자로 취업하기 어려운 시점이었다. 그런데 취업을 했다. 감사하게도 매..
-
정렬 알고리즘 및 자료구조 구현algorithm 2024. 4. 11. 23:57
정렬 알고리즘1. 버블 정렬def bubbleSort1(arr): for i in range(len(arr)): for j in range(len(arr) - 1): if arr[j] > arr[j + 1]: temp = arr[j] arr[j] = arr[j + 1] arr[j + 1] = temp def bubbleSort2(arr): idx = 0 temp = 0 while idx < len(arr): for i in range(len(arr) - 1): if arr[i + 1] < arr[i]: temp = arr[i] arr[i] = arr[i + 1] arr[i + 1] = temp idx += 1 arr = [3, 1, 5, 2, 4] bubbleSort2(arr) print(arr) 2. ..
-
99클럽 코테 스터디 17일차 TIL - 중복, 연속적으로 계산할 땐 누적합Coding Test 2024. 4. 10. 19:42
문제 - 우박수열 정적분 문제링크 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 우박수열 만드는법 양의 정수 k가 주어지고, k에서 시작하는 우박수열을 만듭니다. 이후, 우박수열을 y값으로 하고 x값은 0부터 각 수열 생성시마다 x = 1, x = 2 이런식으로 1씩 증가하도록 해서 (x, y)가 정해지며, 그래프를 그릴 수 있습니다. 마지막으로 넓이를 구해야 하는 x의 범위들이 주어지는데, 이때 해당 x 범위와 x축, y축, 그래프가 형성하는 영역의 넓이를 구하면 됩니다. 제한 사항 k: 1만 이하 ranges 길이: 1만 이하 풀이 과정 이..
-
99클럽 코테 스터디 16일차 TIL - 비슷한 문제가 생각날 때Coding Test 2024. 4. 9. 23:52
문제1 - 부대 복귀 문제링크 문제 설명 양방향 그래프가 주어지고 출발지 노드들과 목적지가 주어질 때, 각 출발지에서 목적지 노드까지의 최단경로 거리를 구하는 문제입니다. 목적지에 도달할 수 없다면 -1입니다. 제약조건 노드n: 최대 10만개 간선roads: 최대 50만개 출발지sources: 최대 500개 풀이 과정 처음엔 그래프상에서 최단경로 길이를 구하는 문제라서 다익스트라를 사용해서 출발지 노드에서 목적지 노드까지의 최단경로거리를 구했습니다. 시행착오1(다익스트라, 실패) import heapq def solve(graph, dists, src, dest): q = [] dists[src][src] = 0 heapq.heappush(q, (0, src)) while q: curDist, curPo..
-
Database Internals 1장을 읽으며 그린 마인드맵database 2024. 4. 8. 12:35
책: Database Internals 목차 Part 1 Storage Engines 1. Introduction and Overview DBMS Architecture Memory-Based vs Disk-Based DBMS Durability in Memory-Based Stores Column-oriented vs Row-oriented DBMS Row-Oriented Data Layout Column-Oriented Data Layout Distinctions and Optimizations Wide Column Stores Data Files and Index Files Data FIles Index Files Primary Index as an Indirection Buffering, Immu..
-
99클럽 코테 스터디 15일차 TIL - 이미 방문한 곳도 다시 가는 DFSCoding Test 2024. 4. 8. 11:39
문제 - 양과 늑대 문제링크 문제 설명 이렇게 생긴 이진트리가 주어집니다. 0번 루트노드부터 탐색을 시작하는데, 노드에 양이 있으면 양 누적 카운트를 + 1 해주고, 늑대가 있으면 늑대 누적 카운트를 + 1 해줍니다. 그런데 [양 누적 1 해서 일단 왼쪽 양을 구한 후, 1->0->8->7->8->9 이렇게 이동해서 우측 서브트리의 양까지 다 구할 수 있습니다. 지금까지의 카운트는 양:4마리, 늑대:1마리이므로, 4번, 6번 늑대까지 방문해도 4대3으로 아직 괜찮습니다. 그래서 5번 양까지 구할 수 있습니다. 제한사항 트리의 노드 개수는 최대 17입니다. 풀이 과정 일단, 어떻게든 트리를 순회하면서 양과 늑대를 카운트해서 최대로 구할 수 있는 양을 구해야 합니다. 그리고, 한번 방문한 노드를 다시 방문할..