99일간의 몰입의 기간이 끝났다. 하지만 앞으로 취업준비부터 취업 후까지 더 몰입해야겠다고 생각하면서 회고를 남겨본다. 항해 99를 진행하며 실제로 체감한 항해의 장/단점 항해 99의 장점이라면 3개월 내에 어디 가서 코딩에 발좀 담가봤다 할 정도로 개발에 대해 깊이 있는 커리큘럼과 팀원 간 협업능력을 길러주어 앞으로 개발자로 일하면서 협업을 어떻게 해야 할지, 이런저런 난감한 상황들에 대해 어떻게 대처해야 할지 미리 겪어보고 서로 돕고 도움받는 과정에서 어떤 태도로 임해야 할지 정말 많은 것들을 배울 수 있었다. 단점으로는 항해를 하기위해 드는 비용에 비해 내가 누리는 것이 부족하거나 내가 지금 잘 해내고 있는가에 대해서 의심을 많이 하게 되는데, 그러한 부분에서 확신을 주는 게 부족하지 않았나 싶다...
Sort List Given the head of a linked list, return the list after sorting it in ascending order. Example 1: Input: head = [4,2,1,3] Output: [1,2,3,4] Example 2: Input: head = [-1,5,3,4,0] Output: [-1,0,3,4,5] Example 3: Input: head = [] Output: [] Constraints: The number of nodes in the list is in the range [0, 5 * 104]. -105 head.next!.val) { [head.val, head.next!.val] = [head.next!.val, head.va..
Linear Probing 방식의 Hash Table hash table은 JavaScript에서 { "key" : { "innerKey" : "value" } } 와 같이 사용하는것을 지칭하는것으로 알고 있었는데, linear probing방식으로 구현해보는 과제가 주어져 일단 linear probing이 무엇인지부터 알아보아야겠다. Linear Probing ? 위키디피아에 따르면 linear probing이란, 해시 테이블 의 충돌을 해결하기 위한 컴퓨터 프로그래밍 방식 , 키-값 쌍 의 컬렉션을 유지 관리 하고 주어진 키와 관련된 값을 찾기 위한 데이터 구조 라고한다. 세션을 듣던 중 해싱된 키값이 중복될경우 다음 해싱된 키값으로 저장하는 로직으로 설명을 들었던것을 참고하여 구현하면 될것으로 보인..
Contains Duplicate II Given an integer array nums and an integer k, return true if there are two distinct indices i and j in the array such that nums[i] == nums[j] and abs(i - j)
Two Sum Given an array of integers nums and an integer target, return indices of the two numbers such that they add up to target. You may assume that each input would have exactly one solution, and you may not use the same element twice. You can return the answer in any order. Example 1: Input: nums = [2,7,11,15], target = 9 Output: [0,1] Explanation: Because nums[0] + nums[1] == 9, we return [0..
Evaluate Reverse Polish Notation You are given an array of strings tokens that represents an arithmetic expression in a Reverse Polish Notation. Evaluate the expression. Return an integer that represents the value of the expression. Note that: The valid operators are '+', '-', '*', and '/'. Each operand may be an integer or another expression. The division between two integers always truncates t..
Design a stack that supports push, pop, top, and retrieving the minimum element in constant time. Implement the MinStack class: MinStack() initializes the stack object. void push(int val) pushes the element val onto the stack. void pop() removes the element on the top of the stack. int top() gets the top element of the stack. int getMin() retrieves the minimum element in the stack. You must impl..
Two Sum II - Input Array Is Sorted Given a 1-indexed array of integers numbers that is already sorted in non-decreasing order, find two numbers such that they add up to a specific target number. Let these two numbers be numbers[index1] and numbers[index2] where 1
Valid Palindrome A phrase is a palindrome if, after converting all uppercase letters into lowercase letters and removing all non-alphanumeric characters, it reads the same forward and backward. Alphanumeric characters include letters and numbers. Given a string s, return true if it is a palindrome, or false otherwise. Example 1: Input: s = "A man, a plan, a canal: Panama" Output: true Explanatio..