목록전체 글 (169)
seunghyun Note
string, number, boolean 세 가지 원시 타입은 js에서 typeof 연산자를 사용하였을 때 얻을 수 있는 것과 같은 이름이다. string : "abcd" number : 1234 -> int, float은 존재하지 않는다. boolean : true , false Arrays [1,2,3,4] 와 같은 배열 타입을 정할 때number[]` 구문을 사용 가능하다. string[] 은 문자열 배열이다. number[] = Array 의 형태로 작성 가능하다. 이러한 형태를 제네릭 T라고 한다. Any any는 특별한 타입이고 타입 검사 오류가 발생하는 것을 원하지 않을 때 사용 가능하다. let obj: any = { x: 0 }; // 아래 이어지는 코드들은 모두 오류 없이 정상적으로 ..
타입스크립트를 왜 사용해야 할까? 편했던 js에서 더 문법을 많이 요구하는 타입스크립트를 왜 배워야 하는지 잘 모르겠어서 문서를 통해 공부하게 됐다. 타입스크립트는 정적타입 언어, 컴파일 언어, 자바스크립트에 의존적이고, 더 나은 구조와 간결함, 재사용성이 있다는데 내가 코드를 볼 때마다 그러한 느낌을 못 받았다. 프런트엔드를 공부하다면 TS는 "써도 되냐?"가 아닌 "써야 하는 이유"를 많이 말씀해 준다. 타입스크립트를 사용해야 하는 이유는 공부를 하면서 느낀 게 1. 버그 예방 아직까지는 작은 프로젝트를 하지만 큰 프로젝트와 협업을 했을 때 js만 사용했을 때의 오류를 찾는 것이 많이 어렵다. 하지만 타입을 정의해 주고 관리한다면 컴파일 과정에 타입 관련 에러를 막을 수 있다. java를 과거에 공부..
단일 연결 리스트 이중 연결 리스트 스택 & 큐 (배열로 하는 방법은 숙지했음! linked list로 구현해 보기) 이진 검색 트리 트리 순회 (bfs,dfs) 이진 힙 해시 테이블 (사용해 봤지만 복습) 그래프, 그래프 순회 다익스트라 알고리즘 동적 프로그래밍 트리 순회 소개 트리를 순회하는데는 두 가지 방식이 있다. 너비 우선 (BFS) 깊이 우선 (DFS) preorder, inorder, postorder BFS 너비우선탐색 - use Queue(Array & list) : FIFO(first in first out) 아래코드를 보면 1~7번까지 순서로 이동한다. class Node { constructor(value) { this.value = value; this.left = null; th..
링크 : https://school.programmers.co.kr/learn/courses/30/lessons/17680 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 1. LRU 알고리즘을 이해하자 (push & shift)를 사용하기 [정보처리기사에서 본듯..?] https://dailylifeofdeveloper.tistory.com/355(여기 참고!) LRU 알고리즘 (Least Recentely Used) 개념 및 구현방법 안녕하세요! daily_D 입니다! 👩🏻💻 오늘은 페이지 교체 알고리즘 중에서 LRU에 대해서 공부해볼까요?..
링크 : https://www.acmicpc.net/problem/1991 1991번: 트리 순회 첫째 줄에는 이진 트리의 노드의 개수 N(1 ≤ N ≤ 26)이 주어진다. 둘째 줄부터 N개의 줄에 걸쳐 각 노드와 그의 왼쪽 자식 노드, 오른쪽 자식 노드가 주어진다. 노드의 이름은 A부터 차례대로 알파 www.acmicpc.net 문제 풀이 이진 트리를 입력받아 전위 순회(preorder traversal), 중위 순회(inorder traversal), 후위 순회(postorder traversal)한 결과를 출력하는 프로그램을 작성하시오. 아직 트리에 대한 이해도가 많이 부족한 거 같다. 굳이 class를 만들어서 풀 필요가 없었다. 또한 순회에 대한 재귀가 아직 이해가 되지 않아 아래의 링크를 참고..
링크 : https://school.programmers.co.kr/learn/courses/30/lessons/136798 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 deep dive 풀이 로직을 완벽히 이해하고 풀었다. - 약수를 통한 간단한 알고리즘이였고 시간복잡도를 최대한 고려해보려고 하다가 O(N^2)으로 구성해봤다. - js문법인 map과 forEach 를 통해 순회를 시키고 function을 만들어 캡슐화를 시켰다. - 따로 예외케이스는 없었다. 예외처리 : x 특이점 : 약수를 구할 때 자기 자신을 제외하고 number/2로 ..