Linked Lists
해당 포스팅은 'Cracking the Coding Interview'를 읽으며 정리한 내용을 담은 포스팅으로 이론 내용 및 모든 문제의 출처는 'Cracking the Coding Interview'에 있습니다. 문제 자체에 대한 설명은 담고 있지 않으며 원문 파일은 GitHub 및 원문 책 사이트를 통해 다운로드하실 수 있습니다. 연결리스트 : 차례로 연결된 노드를 표현해주는 자료구조 단방향 연결리스트 : 개별 노드 :arrow_right: 다음 노드 양방향 연결리스트 : 개별 노드 :arrow_right: 다음 노드 & 이전 노드 ⭐️ 시작 지점에서의 아이템 추가 및 삭제 연산이 상수 시간 소요 1. Creating a Linked List 단방향 연결리스트 구현 코드 class Node { Nod..
2023.06.29
Arrays and Strings
해당 포스팅은 'Cracking the Coding Interview'를 읽으며 정리한 내용을 담은 포스팅으로 이론 내용 및 모든 문제의 출처는 'Cracking the Coding Interview'에 있습니다. 문제 자체에 대한 설명은 담고 있지 않으며 원문 파일은 GitHub 및 원문 책 사이트를 통해 다운로드하실 수 있습니다. 1. Hash Tables 해시테이블 : 효율적인 탐색을 위한 자료구조 키(key)를 값(value)에 대응한다. 간단한 해시테이블 구현 방법 연결리스트(linked list), 해시 코드 함수(hash code function) 해시테이블 데이터 삽입 과정 키의 해시 코드를 계산한다. 키의 자료형은 보통 int 혹은 long 이 된다. :arrow_right: 이는 서로 ..
2023.06.28
no image
Big-O Notation
해당 포스팅은 'Cracking the Coding Interview'를 읽으며 정리한 내용을 담은 포스팅으로 이론 내용 및 모든 문제의 출처는 'Cracking the Coding Interview'에 있습니다. 문제 자체에 대한 설명은 담고 있지 않으며 원문 파일은 GitHub 및 원문 책 사이트를 통해 다운로드하실 수 있습니다. 1. An Analogy 디스크에 있는 파일을 다른 지역에 살고 있는 친구에게 가능한 빨리 보내려고 한다고 가정해보자. 대부분의 사람들은 문제를 듣자마자 온라인 의 방식을 생각하곤 한다. But, 경우에 따라 맞을 수도 틀릴 수도 있다. 파일의 크기가 작다면 당연히 온라인을 통한 전송이 빠를 것이다. 그러나 파일의 크기가 아주 크다면 비행기를 통해 물리적으로 배달하는 게 더..
2023.06.26