일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- java
- 라면공장
- programmers
- 단체사진 찍기
- 카카오 2020 공채
- 정수 내림차순으로 배치하기
- 주사위 윷놀이
- 후보키
- 2019 카카오 공채
- 가장 큰 정사각형 찾기
- 괄호 변환
- 시저암호
- 124 나라의 숫자
- 2018 카카오 공채
- 짝지어 제거하기
- 찾아라 프로그래밍 마에스터
- 17825
- 카카오2020 공채
- 3954
- 자연수 뒤집어 배열로 만들기
- 투포인터
- 문자열을 정수로 바꾸기
- 게리맨더링 2
- 자바
- 프로그래머스
- 12906
- 백준
- 17779
- Brainf**k 인터프리터
- 큰 수 만들기
- Today
- Total
목록CS (84)
기기
1. URL 분류: 브라우저는 URL을 schema(예: "http" 또는 "https"), domain(예: "www.example.com") 및 path(예: "/page.html")로 나눕니다.schema정의한 프로토콜을 통해 다른 앱과 통신doamin사이트에 액세스하는 데 사용되는 고유하고 기억하기 쉬운 주소IP 주소를 갖는 서버를 사용자가 쉽게 기억하고 찾을 수 있도록 만들어준 서비스path페이지에 대한 경로 2. DNS Query: 웹사이트가 아직 캐시되지 않은 경우 DNS 서버를 쿼리하여 웹사이트의 실제 IP 주소를 찾습니다.(캐시 확인) hosts 파일 확인ip 주소와 hostname 을 매칭시켜놓은 텍스트 파일이며, 해당 컴퓨터 안에선 이 파일이 우선권을 갖습니다. hosts 파일에 정..
정의 어떤 한 그래프와 해당 그래프의 시작 정점이 주어졌을때, 시작점에서 간선(Edge, E)을 타고 이동할 수 있는 정점(Node/Vertex, V)을 모두 찾아야 하는 문제이미 지난 정점은 다시 방문하지 않는다. DFS(Depth First Search)그래프에서 한 노드에서 시작해서 모든 노드까지 방문하는 알고리즘 다차원 배열에서 각 칸을 방문할 때 깊이를 우선으로 방문하는 알고리즘 깊이가 무한히 깊어지면 스택오버플로우 발생하기에 깊이 제한을 두는 방법으로 처리 가능재귀함수로 짤 경우 Stack 메모리 초과날 수 있기 때문에 주의재귀함수 호출마다 함수와 매개변수를 생성하는 작업이 있기 때문에 시간이 조금 더 걸린다. BFS(Breadth FIrst Search) 다차원 배열에서 각 칸을 방문할 때..
1. 인접행렬장점행렬을 사용하기 때문에 공간지역성 특징으로 탐색 속도가 더 빠르다. 연결된 노드 중 특정 노드를 탐색하는 접근 속도 O(1) 단점 위 그림처럼 O(N^2) 크기로 모든 노드 간에 간선 유무를 저장하게 된다. 방향성 있는 그래프라면 더욱 공간 낭비가 심해진다. 2. 인접리스트장점 꼭 필요한 간선만 표시하기 때문에 공간을 아낀다.단점 리스트로 관리하에 속도가 느리다. 연결된 노드 중 특정 노드를 탐색하는 접근 속도 O(N) 3. 비교 노드 수보다 간선의 수가 많아질수록 추천 인접행렬 추천간선이 많아질수록 인접리스트의 공간을 아끼는 장점이 줄어든다. 노드의 수가 노드 수보다 많을 때 인접 리스트 추천 공간을 아끼는 장점이 더욱 커진다.기업 알고리즘 테스트에서는? 아직까지는 위 차이를 구분해서..
문제상근이는 나무 M미터가 필요하다. 근처에 나무를 구입할 곳이 모두 망해버렸기 때문에, 정부에 벌목 허가를 요청했다. 정부는 상근이네 집 근처의 나무 한 줄에 대한 벌목 허가를 내주었고, 상근이는 새로 구입한 목재절단기를 이용해서 나무를 구할것이다.목재절단기는 다음과 같이 동작한다. 먼저, 상근이는 절단기에 높이 H를 지정해야 한다. 높이를 지정하면 톱날이 땅으로부터 H미터 위로 올라간다. 그 다음, 한 줄에 연속해있는 나무를 모두 절단해버린다. 따라서, 높이가 H보다 큰 나무는 H 위의 부분이 잘릴 것이고, 낮은 나무는 잘리지 않을 것이다. 예를 들어, 한 줄에 연속해있는 나무의 높이가 20, 15, 10, 17이라고 하자. 상근이가 높이를 15로 지정했다면, 나무를 자른 뒤의 높이는 15, 15, ..
이진 탐색 정렬되어 있는 데이터를 두 부분으로 나누며 값을 탐색하는 알고리즘 비슷하게 분할하는 알고리즘으로 분할정복이 있다. 하지만 분할정복은 문제를 부분적으로 해결하는 알고리즘으로 탐색이 목적이 아니다. 이진탐색은 '수가 존재하는지' 빠르게 알아낼 수 있다. 단 중복원소가 있을 때 가장 왼쪽의 원소의 위치를 반환하는 방법과, 가장 오른쪽 원소의 위치를 반환하는 방법이 있다. 기본적인 메커니즘 탐색 범위 내[low ~ high]의 배열의 중간 인덱스[(low + high)/2]를 구한다. 중간 인덱스 값과 key 값을 비교한다. (key는 탐색하고자 하는 값) key 값이 중간 값보다 작다면 왼쪽 부분을, key 값이 중간 보다 크다면 오른쪽 부분을 탐색한다. 이 과정을 반복하며 key 값이 있을 수 있..
https://www.acmicpc.net/problem/2003 풀이 이중루프로 i, j 탐색을 하면 N이 10^5이기 때문에 시간초과에 걸린다. 그래서 누적합 또는 투포인터로 풀면 통과할 수 있다. 1) 누적합 (prefix sum) 누적합으로 풀 수는 있는데 N이 더 컸더라면 누적합으로는 풀 수 없다. long[] pre = new long[N+1]; st = new StringTokenizer(br.readLine()); for(int i = 1 ; i
1. 전원 ON 컴퓨터의 전원을 켜면 메인보드에 전력이 들어온다. (Power ON) 메인보드에 장착된 장치들(CPU, 메모리, 디스크 등)에도 전력 공급 2. ROM에 저장된 BIOS(Basic Input Output System) 펌웨어 실행 ROM(Read Only Memory)에 저장된 BIOS(Basic Input/Output System)를 읽어들여 실행 ROM(Read Only Memory) 이란 주기억장치(메모리)에는 ROM, RAM 두 종류 존재 ROM은 말 그대로 Read-Only Memory이기 때문에 오직 읽기만 가능 ROM에 저장된 데이터들은 비휘발성이기 때문에 전원 공급이 끊겨도 저장된 데이터들이 사라지지 않음 그렇기 떄문에 전원이 없어도 항상 저장되어야 하는 데이터가 저장 BI..
토이프로젝트에서 데이터의 생성날짜, 수정날짜 컬럼을 추가하던 중 시간 데이터 타입으로 어떤걸 쓸지 고민하다 간단히 정리 날짜와 시간을 표현하는 타입 MySQL에서는 날짜와 시간을 표현하는 데 여러 가지 타입을 제공 DATE: YYYY-MM-DD 형식으로 날짜만 표현, datetime에서 date만 뽑아낸 것 (Extract the date part of a date or datetime expression) DATETIME: YYYY-MM-DD HH:MM:SS 형식으로 날짜와 시간을 표현 TIMESTAMP: YYYY-MM-DD HH:MM:SS 형식으로 날짜와 시간을 표현하며, 자동으로 값이 업데이트 TIME: HH:MM:SS 형식으로 시간만 표현 YEAR: YYYY 형식으로 년도만 표현 날짜와 시간에 관..