일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 배열
- join
- 코드스테이츠
- 개발자의 책장
- Programmers
- Hackerrank
- 코딩공부
- 역행자
- Where
- 개발자_조이킴
- SQL
- 최강의 인생
- JavaScript
- 코딩테스트
- 재귀함수
- 프로그래머스
- for문
- Developer_JoyKim
- array
- array.slice()
- node.js
- 코플릿
- MySQL
- array.push()
- 자바스크립트
- Algorithms
- 알고리즘
- select
- 블록체인
- 정규표현식
- Today
- Total
목록자료구조 (5)
CodingSpace
Problem. 배달 Link. https://school.programmers.co.kr/learn/courses/30/lessons/12978?language=javascript 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Problem. N개의 마을로 이루어진 나라가 있습니다. 이 나라의 각 마을에는 1부터 N까지의 번호가 각각 하나씩 부여되어있습니다. 각 마을은 양방향으로 통행할 수 있는 도로로 연결되어 있는데, 서로 다른 마을 간에 이동할 때는 이 도로를 지나야 합니다. 도로를 지날 때 걸리는 시간은 도로별로 다릅니다. 현재 1번 마을에 있는 ..
Problem. 가장 먼 노드 Link. https://school.programmers.co.kr/learn/courses/30/lessons/49189 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Problem. n개의 노드가 있는 그래프가 있습니다. 각 노드는 1부터 n까지 번호가 적혀있습니다. 1번 노드에서 가장 멀리 떨어진 노드의 갯수를 구하려고 합니다. 가장 멀리 떨어진 노드란 최단경로로 이동했을 때 간선의 개수가 가장 많은 노드를 의미합니다. 노드의 개수 n, 간선에 대한 정보가 담긴 2차원 배열 vertex가 매개변수로 주어질 때, 1번 ..
Queue 먼저 삽입된 데이터가 먼저 나오는 FIFO(First In First Out) 구조로 잘 알려진 자료구조이다. 너비 우선 탐색 (Breadth First Search, BFS)를 구현하는데 사용된다. 코드 구현 자료구조 Queue를 javascript 코드로 구현하면 아래와 같다. // javascript로 구현한 // 자료구조 Queue class Queue { constructor() { this.queue = []; this.head = 0; this.rear = 0; } // 삽입 enqueue(value) { this.rear++; this.queue[this.rear] = value; } // 제거 dequeue() { const value = this.queue[this.front..
Problem. 배상 비용 최소화 Link. https://school.programmers.co.kr/learn/courses/13213/lessons/91086 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr Problem. OO 조선소에서는 태풍으로 인한 작업지연으로 수주한 선박들을 기한 내에 완성하지 못할 것이 예상됩니다. 기한 내에 완성하지 못하면 손해 배상을 해야 하므로 남은 일의 작업량을 숫자로 매기고 배상 비용을 최소화하는 방법을 찾으려고 합니다. 배상 비용은 각 선박의 완성까지 남은 일의 작업량을 제곱하여 모두 더한 값이 됩니다. 조선소에서..
Heap 이진 트리(Binary Tree) 형태를 가지며 우선순위가 높은 요소가 먼저 나가기 위해 요소가 삽입, 삭제될 때 바로 정렬되는 특징을 가짐 Heap에는 루트가 가장 큰 값이 되는 최대 힙(Max Heap)과 루트가 가장 작은 값이 되는 최소 힙(Min Heap)이 있다. 일반적으로 배열(array)를 활용해 구현한다. Heap - 요소 추가 알고리즘 ①: Heap에 요소가 추가될 때는 트리의 가장 마지막 정점에 위치시킨다. ②: 요소를 추가한 후 부모 정점보다 우선순위가 높다면 부모 정점과 순서를 바꾼다. ①번 ②번 과정을 반복하면 가장 우선순위가 높은 정점이 루트가 된다. 위의 알고리즘을 javascript 코드로 구현하면 아래와 같다. // javascript로 구현한 // Heap 요소 ..