일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- CSS
- 정보처리기사요약
- 스프링
- 국비코딩
- 정보처리기사실기
- 오라클
- 리액트네이티브
- Java의정석
- 자바스크립트
- php
- 자스코테
- 평일코딩
- 이안의평일코딩
- 코딩테스트
- 정보처리기사실기요약
- 국비IT
- 자바의정석
- VUE
- typescript
- 정보처리기사
- 타입스크립트
- 자바스크립트 코딩테스트
- ReactNative
- 리액트
- javascript
- Oracle
- 정보처리기사실기정리
- react
- spring
- 정보처리기사정리
- Today
- Total
목록분류 전체보기 (272)
이안의 평일코딩
VSCode로 주구장창 작업을 하다 회사에서 WebStorm을 쓰게되어 VSCode와는 단축키가 다르다는 것을 깨닫고 정리를 해보았다. 단축키 정보는 Mac 기준이며, 해당하는 키 심볼은 아래를 참고해주세요. 🍎 ⌘ : Command / ⇧ : Shift / ⌥ : Option / ⌃ : Control / ↵ : Enter, Return / ⇥ : Tab ⇧⇧ : 전체 검색 ⌘ + ⇧ + A : 액션 검색 ⌘ + ⇧ + F : 파일 검색 ⌘ + 1 : 메뉴로 이동 ⌘ + 2 : 북마크 ⌘ + 9 : Git 로그 확인 ⌘ + 0 : Git 커밋 ⌘ + T : Project 업데이트(Pull) ⌘ + , : 환경설정(Preference) 열기 ⌘ + ⇧ + [ ] (좌우) : 탭 위치 좌우로 이동 ⌘ + [..
스마트커밋을 이용하기 위해서는 git comment에서 commit시에 #comment 를 추가해주면 된다. #comment #comment 스마트커밋 테스트 https://support.atlassian.com/bitbucket-cloud/docs/use-smart-commits/ Use Smart Commits | Bitbucket Cloud | Atlassian Support If you manage your project's repositories in Bitbucket or GitHub, or use Fisheye to browse and search your repositories, you can enable and use smart commits. support.atlassian.com 만약..
warning: LF will be replaced by CRLF in ~~~ The file will have its original line endings in your working directory 프로젝트를 셋업하면서 git과 연동하기 위해 git add를 한 순간 터미널에서 위와 같은 오류가 발생했다. 해결방법 LF(Line Feed), CRLF(Carriage Return + Line Feed)는 운영체제마다 줄바꿈의 방향이 다르기 때문에 나는 오류이다. // 윈도우 사용자 git config --global core.autocrlf true // 리눅스, 맥 사용자 git config --global core.autocrlf input 위와같이 운영체제에 따라 터미널에 입력하면 해결할 수 ..
그래프를 탐색하는 방법에는 DFS(Depth First Search: 깊이 우선 탐색)과 BFS(Breadth First Search: 넓이 우선 탐색) 두 가지가 있다. DFS는 루트노드에서 시작해 다음 분기로 넘어가기 전 해당 분기를 완벽하게 탐색하는 방식을 말한다. BFS는 루트노드에서 시작해 인접한 노드를 먼저 탐색하는 방식으로 시작 정점으로부터 가까운 정점을 먼저 방문하고 멀리 떨어져 있는 정점을 나중에 방문하는 순회 방법이다. 모든 노드를 방문하고자 하는 경우에는 DFS를 가까운 노드부터 탐색하기 위해서는 BFS를 사용한다. 검색 속도 자체는 BFS가 빠르지만 DFS가 더 간단하다. 검색 대상 그래프가 크거나 경로의 특징을 저장해둬야 하는 문제는 DFS를, 검색 대상의 규모가 크지 않고 최단거..
그래프는 인접행렬(adjacency matrix) 혹은 인접리스트(adjacency list)로 표현한다. 노드 갯수가 적을 때는 인접행렬로도 충분하지만 노드 수가 많아지면 인접리스트를 이용하는게 효율이 좋다. (시간복잡도가 훨씬 줄어든다.) 인접행렬은 node와 edge의 정보를 행렬로 표현하는 방법으로, edge와 상관없이 모든 node를 표현해야 하기 때문에 node의 수가 많을수록 메모리 사용량이 늘어난다. (node의 개수만큼 반복문을 돌아야 하기 때문) 인접리스트는 node와 edge의 정보를 리스트로 표현하는 방법으로, 연결된 것만 표시하므로 인접행렬에 비해 간단하다. // 인접행렬 function solution(n, arr) { let answer = 0; let graph = Array..
방향 그래프(directed graph)와 무방향 그래프(undirected graph)는 이동방향의 유무 차이로 구분한다. 방향 그래프는 이동할 수 있는 방향이 정해져있고 무방향은 명칭대로 방향이 없어 양쪽 다 가능하다. // 방향 그래프 let arr = [[1, 2],[1, 3],[1, 4],[2, 1],[2, 3],[2, 5],[3, 4],[4, 2],[4, 5]]; let graph = Array.from(Array(n + 1), () => Array(n + 1).fill(0)); for (let [a, b] of arr) { // arr 값 1개 씩 탐색 graph[a][b] = 1; // 방향 그래프에서 graph arr 에 1로 체크 } // 1로 체크되어 있으면 갈 수 있는 방향인 것 /..
0. 이진트리(binary tree)란 각각의 노드가 최대 두개의 자식 노드를 가지는 트리 자료 구조로, 자식 노드를 각각 왼쪽 자식 노드와 오른쪽 자식 노드라고 한다. (참고로 트리 자료 구조란 노드들이 나무 가지처럼 연결된 비선형 계층적 자료구조를 말한다.) 1. 위 그림에서 각 점은 node 혹은 vertex라고 말하고 두 점을 잇는 선을 edge라고 한다. 그래프는 V(vertex 혹은 node), E(edge)의 집합이다. 따라서 G(V, E)로 표현하기도 한다.
재귀함수(Recursion) 자기자신을 호출하는 것을 재귀함수라 하는데, 반복문과 동일하지만 조합할 때 사용할 수있다. return하면 반환한다는 의미도 있지만 함수에서는 종료를 의미하기도 한다. function solution(n){ function DFS(Level){ if(Level==0) return; else{ console.log(Level); // 3 2 1 DFS(Level-1); console.log(Level); // 1 2 3 } } DFS(n) } solution(3); console을 찍었을 때 왜 반대로 찍힐까? 재귀함수 이후에 찍은 console은 stack에 쌓여있다가 복귀(pop)를해서 가장 늦게 들어온 메서드부터 console을 출력한다. Stack 자료구조와 같이 FIL..