일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 큐
- 알고리즘
- 프로세스
- RT scheduling
- 컨테이너
- 연결리스트
- 프론트엔드
- 포인터
- 자료구조
- 릿코드
- Machine Learning
- 연결 리스트
- cors
- pytorch
- alexnet
- C
- 스택
- 자바스크립트
- 타입스크립트
- vue3
- 웹팩
- 프로그래머스
- RxJS
- 배열
- 브라우저
- 코딩테스트
- 이진탐색
- APOLLO
- GraphQL
- 해시테이블
- Today
- Total
목록재귀 (3)
프린세스 다이어리
1. 접근 방법 (1) 종료조건이 있고 반복되는 연산이 있으므로 재귀로 풀 수 있다. (2) 앞에 두 노드를 바꾸고 + 나머지 리스트를 합친다. 그리고 그 나머지 리스트 중 앞에 두 노드를 바꾸고 + 나머지의 나머지 리스트를 합친다. 결국, 한 단계 내에서 수행할 연산은: 앞에 두 노드를 바꾸고 + 두번째 노드에 나머지 리스트를 합치는 작업이다. let temp = head.next; head.next = temp.next; temp.next = head; head.next = swapPairs(head.next) (3) 예외처리를 추가한다. 앞의 두 노드의 위치를 바꿀 필요가 없는 경우는 그냥 리턴해준다. if (head == null) return head; if (head.next == null) ..
문자열 뒤집기 문제. 1. 접근 방법 (1) 문제가 재귀 알고리즘 분류 안에 있고 + 내가 재귀를 공부해야 하고 + 각 반복적인 연산으로 특정 조건에 다다를 때까지 수행하면 되기 때문에 재귀로 접근한다. (2) 인덱스 양쪽 끝에서부터 원소를 교체해, 가운데 mid 지점으로 옮겨갈 때까지 재귀 수행 - 베이스 케이스: 왼쪽 인덱스가 가운데 인덱스보다 커지면 함수를 종료한다. - 점화식: 두 인덱스에 해당하는 값끼리 교체해 준다. 그리고 인덱스를 하나씩 옮겨준다. 2. 전체 해답 /** * @param {character[]} s * @return {void} Do not return anything, modify s in-place instead. */ var reverseString = function(..
> 문제 바로가기 코딩테스트 연습 - 여행경로 [["ICN", "SFO"], ["ICN", "ATL"], ["SFO", "ATL"], ["ATL", "ICN"], ["ATL","SFO"]] ["ICN", "ATL", "ICN", "SFO", "ATL", "SFO"] programmers.co.kr 1. 접근 방법 - [["ICN", "JFK"], ["HND", "IAD"], ["JFK", "HND"]] 이런 그래프고 각 노드의 [0]이 출발, [1]이 도착임 - 문제에서 항상 ICN 공항에서 출발한다고 했으므로 출발지는 'ICN' - 주어진 tickets(array), 시작노드 'ICN'(string), 탐색중인 경로 path(array), 결과 담을 routes(array) (1) 만약 tickets가..