프리온보딩 백엔드 인턴십 2주차 회고록
프리온보딩 백엔드 인턴십 2주차 회고록 성장기록/원티드 프리온보딩 2023. 9. 8. 12:21

4주 인턴십 과정 중 벌써 2주가 지났습니다. 알고리즘 문제는 여전히 주어지고, 새로운 알고리즘을 또다시 공부하고...상당히 바쁩니다. 거기에 팀까지 결성되어서 정말 정신없는 하루하루를 보내고 있습니다. 팀 결성 팀은 크게 프로젝트를 만드는 팀과 취업 준비를 하는 팀으로 나누어 결성이 됐습니다. 직접 제가 사람을 모은 것은 아니고 프리온보딩 인턴십 내에서 팀 프로젝트를 하고 싶은 사람들을 신청자를 모으기에 신청을 했습니다. 신청자들을 모아 처음 인턴쉽에 들어올때 제출한 과제의 코드 실력과 언어를 기준으로 적절하게 팀을 분배하였다고 합니다. 제가 속한 팀은, 예상했지만 다 저보다 잘하는 분들이었습니다. 저는 비전공에 학원수료를 한 것이 전부이기 때문에 많은 부분이 부족하였고, 그렇기 때문에 잘하는 분들에게..

리트코드 - 230. Kth Smallest Element in a BST
리트코드 - 230. Kth Smallest Element in a BST CS/코딩테스트 2023. 9. 8. 03:24

리트코드 - 230. Kth Smallest Element in a BST 출처 - https://leetcode.com/problems/kth-smallest-element-in-a-bst/?envType=study-plan-v2&envId=top-interview-150 문제 설명 이진 탐색 트리의 루트와 정수 k가 주어질 때, 트리 노드의 모든 값 중에서 k번째로 작은 값을 (1부터 시작하는 인덱스로) 반환하세요. 의사코드 min = 정수의 최대값 count = 0 함수 k번째 작은 값 (노드 root, int k) sortAscending(root, k) 함수 min 리턴 함수 sortAscending(노드 node, int k) if (node == null) return; sortAscendi..

리트코드 - 530. Minimum Absolute Difference in BST
리트코드 - 530. Minimum Absolute Difference in BST CS/코딩테스트 2023. 9. 6. 23:50

리트코드 - 530. Minimum Absolute Difference in BST 출처 - https://leetcode.com/problems/minimum-absolute-difference-in-bst/?envType=study-plan-v2&envId=top-interview-150 문제 설명 이진 탐색 트리 (BST)의 루트가 주어질 때, 트리 내의 두 다른 노드 값 간의 최소 절대 차이를 반환하세요, 의사코드 prev 노드 선언 함수 최소값 int min = 최대 정수값 minValue 함수(매개변수 root, min) 함수 minValue if (node == null) min 리턴 min = minValue(node의 왼쪽, min) if (prev !=null) min = min과 (p..

해쉬테이블과 Linear Probing에 관한 정리
해쉬테이블과 Linear Probing에 관한 정리 CS/알고리즘 2023. 9. 5. 08:44

해쉬테이블 구조 해쉬테이블이란 key, value 형태로 값을 저장하여 빠르게 key값만 가지고 데이터를 검색할 수 있습니다. 이러한 해쉬테이블은 key값은 중복이 되면 안되고, value값은 중복될 수 있는데요. 쉽게 설명하면 웹사이트에서 id로 쓰는 값이 key값이고 password가 value값입니다. id는 같은 사람이 없지만 password는 (우연할지라도) 같을 수 있는 것과 같습니다. 그러면 이 key값은 어떻게 보관할까요? 해쉬테이블이 key 값을 저장하는 방법 해쉬테이블은 hash function에서 key값을 가져와 특정 연산을 하여 인덱스 값을 계산하는데 이를 해싱이라고 합니다. 해싱을 사용하면 키의 데이터 타입이나 크기에 상관없이 일정한 크기의 해시코드를 생성할 수 있습니다. 그리고..

리트코드 - 162. Find Peak Element
리트코드 - 162. Find Peak Element CS/코딩테스트 2023. 9. 4. 23:24

리트코드 - 162. Find Peak Element 출처 - https://leetcode.com/problems/find-peak-element/?envType=study-plan-v2&envId=top-interview-150 문제 설명 피크 요소는 주변 요소보다 엄격하게 큰 요소를 의미합니다. 0-인덱스 정수 배열 nums가 주어지면, 피크 요소를 찾아서 해당 인덱스를 반환해야 합니다. 배열에 여러 개의 피크가 있을 경우, 그 중 하나의 피크의 인덱스를 반환하면 됩니다. 여기서 nums[-1] = nums[n] = -∞라고 가정합니다. 다시 말해, 배열 바깥에 있는 이웃 요소보다 요소는 항상 엄격하게 크다고 간주됩니다. O(log n) 시간 내에 실행되는 알고리즘을 작성해야 합니다. 의사코드 왼쪽..

리트코드 - 148. Sort List
리트코드 - 148. Sort List CS/코딩테스트 2023. 9. 3. 21:41

리트코드 - 148. Sort List 출처 - https://leetcode.com/problems/sort-list/?envType=study-plan-v2&envId=top-interview-150 문제 설명 연결 리스트의 head가 주어졌을 때, 이 연결 리스트를 오름차순으로 정렬하여 반환하세요. 의사코드 함수 sortList if (head가 null 이거나 head의 다음노드가 null이면) head 리턴 count = 0 currentNode를 head로 설정 반복문 시작 [currentNode이 null이 아니면] currentNode의 다음노드를 currentNode로 count 에 +1 을 더함 // currentNode의 갯수를 세기 위함 반복문 종료 currentNode를 다시 he..

image