| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- 알고리즘문제
- 주니어개발자
- 프로그래밍
- 정렬알고리즘
- 백엔드
- 양자컴퓨팅
- 개발자
- 시간복잡도
- 초보개발자
- 인공지능
- 퀵정렬
- 재귀함수
- 중급알고리즘
- 양자컴퓨터
- 초전도체
- SortingAlgorithm
- 디자인패턴
- 이석배
- 알고리즘
- Ai
- 분할정복
- 퀀텀컴퓨팅
- 개발자공부
- 고급알고리즘
- It
- 알고리즘공부
- chatGPT
- 파이썬
- 챗gpt
- 양자역학
- Today
- Total
목록전체 글 (39)
세상은 넓고 천재는 많다
chatGPT 매개변수 설정 사용자는 ChatGPT에서 모델의 응답을 미세 조정하기 위해 다양한 매개변수를 사용자 정의할 수 있습니다. 아래는 주요 매개변수 몇 가지에 대한 설명입니다: 온도 (Temperature): 이 매개변수는 모델 출력의 무작위성을 조절합니다. 값을 증가시킬수록 (예: 0.8), 출력이 보다 더 무작위적이고, 작게 설정하면 (예: 0.2) 더 예측 가능한 결과가 나옵니다. 사용 예시: {"temperature": 0.5} 최대 토큰 (Max Tokens): 응답의 최대 길이를 설정합니다. 이 값을 작게 설정하면 응답이 잘려서 의미가 불분명해질 수 있습니다. 사용법: {"max_tokens": 150} 상위 P (Top P): 주어진 누적 확률 값보다 큰 확률을 가진 어휘의 하위 집..
웹 개발자가 공부해야 할 기술 스택 로드맵은 크게 프론트엔드(Front-end)와 백엔드(Back-end)로 나눌 수 있습니다. 각 분야별로 주요 기술 스택과 학습 경로를 소개하겠습니다. 1. 프론트엔드 (Front-end) 로드맵: 기본 지식: HTML: 웹 페이지의 구조를 정의합니다. CSS: 웹 페이지의 디자인과 레이아웃을 스타일링합니다. JavaScript: 웹 페이지에 동적 기능을 추가합니다. 응용 지식: 반응형 웹 디자인 (Responsive Web Design) CSS 프레임워크 (예: Bootstrap, Tailwind CSS) CSS 전처리기 (예: Sass, Less) JavaScript 프레임워크/라이브러리: React.js Vue.js Angular Svelte 도구 및 기타: 패키..
최대 유량 알고리즘(Max Flow Algorithm) 최대 유량 알고리즘은 그래프 내에서 특정 출발점에서 도착점까지의 최대 흐름을 찾는 문제를 해결하는 알고리즘입니다. 이 문제는 1950년대 Ford와 Fulkerson의 연구를 통해 처음 소개되었으며, 그 이후 다양한 연구와 알고리즘이 제안되었습니다. 1. Orlin의 연구 2013년, Orlin은 최대 유량 문제를 O(nm) 시간 안에 해결할 수 있다는 것을 증명했습니다. 그의 알고리즘은 O(nm + m^1.94) 시간 안에 실행되며, 이는 n^1.06 보다 적은 간선을 가진 그래프에 대해서는 가장 빠른 시간이었습니다. 그래프가 충분히 희소하지 않은 경우, King, Rao, Tarjan에 의한 알고리즘이 가장 빠른 실행 시간을 보였습니다. 2. 알..
A* 알고리즘 (A-star Algorithm) 개요 A* 알고리즘은 그래프 내의 두 노드 사이의 최단 경로를 찾는 데 사용되는 탐색 알고리즘입니다. 이 알고리즘은 각 노드의 예상 비용을 기반으로 최적의 경로를 빠르게 찾을 수 있습니다. A*는 다양한 응용 분야에서 사용되며, 특히 경로 찾기와 그래프 탐색 문제에서 널리 사용됩니다. 특징 휴리스틱 평가: A* 알고리즘은 휴리스틱 함수를 사용하여 각 노드의 예상 비용을 추정합니다. 이 함수는 현재 노드에서 목표 노드까지의 예상 최소 비용을 반환합니다. 최적성: 올바른 휴리스틱 함수를 사용하면 A* 알고리즘은 항상 최적의 경로를 찾을 수 있습니다. 효율성: A*는 경로의 예상 비용을 기반으로 노드를 확장하므로, 불필요한 경로를 탐색하는 것을 피하면서 효율적으..
동적 계획법(DP)은 복잡한 문제를 더 작은 하위 문제로 나누어 풀고, 작은 문제의 결과를 저장해 나중에 활용하는 방법입니다. 이를 통해 중복 계산을 줄이고 효율적으로 문제를 해결할 수 있습니다. DP는 주로 최적화 문제에서 사용되며, 특히 겹치는 하위 문제가 많을 때 유용합니다. DP는 아래와 같은 단계로 작동합니다. 문제를 작은 하위 문제로 분할합니다. 이때 겹치는 하위 문제가 발생하는지 확인합니다. 작은 하위 문제를 해결하고, 이를 저장해 나중에 재활용할 수 있도록 합니다. 큰 문제의 해결에 작은 하위 문제의 해결을 활용합니다. 동적 계획법은 크게 두 가지 유형으로 나뉩니다: 탑다운(Top-Down)과 보텀업(Bottom-Up) 방식입니다. 탑다운 방식: 큰 문제를 해결하기 위해 작은 하위 문제를 ..
KMP 문자열 검색 알고리즘(KMP String Search Algorithm) 1. 개요 KMP 알고리즘은 문자열 검색 알고리즘 중 하나로, 주어진 텍스트 내에서 특정 패턴을 찾는 데 사용됩니다. 이 알고리즘은 1975년에 Donald Knuth, Vaughan Pratt, 그리고 James H. Morris에 의해 동시에 발견되었습니다. 그들의 이름의 이니셜을 따서 KMP 알고리즘이라고 불립니다. 기본적인 문자열 검색 알고리즘은 텍스트의 각 위치에서 패턴을 찾기 시작하므로, 최악의 경우 시간 복잡도가 O(NM)이 될 수 있습니다. 여기서 N은 텍스트의 길이이고, M은 패턴의 길이입니다. 반면 KMP 알고리즘은 텍스트를 한 번만 훑으면서 패턴을 찾을 수 있습니다. 2. 특징 부분 일치 테이블(Parti..
다익스트라 알고리즘은 그래프 이론에서 가장 짧은 경로를 찾는 데 사용되는 알고리즘 중 하나입니다. 주로 가중치 그래프에서 두 정점 사이의 최단 경로를 찾는 데 적용되며, 음의 가중치가 없는 경우에 최적의 결과를 보장합니다. 이 알고리즘은 네트워크 라우팅, GPS 네비게이션, 그래프 데이터베이스 등에서 활용됩니다. 다익스트라 알고리즘은 아래와 같은 단계로 작동합니다. 시작 노드를 선택하고, 시작 노드에서 다른 모든 노드까지의 거리를 무한대로 초기화합니다. 시작 노드까지의 거리는 0으로 설정합니다. 시작 노드와 연결된 모든 인접 노드에 대해 시작 노드로부터의 거리를 갱신합니다. 이때 각 간선의 가중치를 고려하여 거리를 계산합니다. 아직 방문하지 않은 노드 중에서 가장 거리가 짧은 노드를 선택합니다. 이 노드..
최소 스패닝 트리(Minimum Spanning Tree) 알고리즘은 그래프 이론에서 중요한 개념으로, 주어진 가중치 그래프에서 모든 노드를 연결하는 간선들의 부분집합을 찾는 문제를 다룹니다. 이 알고리즘은 그래프의 모든 노드를 연결하면서 간선 가중치의 합을 최소화하는 트리를 만드는 것이 목표입니다. 최소 스패닝 트리는 네트워크 설계, 도로 구축, 전기 회로 설계 등 다양한 분야에서 중요한 역할을 합니다. 간단한 예시를 통해 이해해보겠습니다. 여러 도시가 있고, 도시들을 연결하는 도로가 있습니다. 각 도로의 건설 비용은 다를 수 있습니다. 이때, 모든 도시를 가장 적은 비용으로 연결하고 싶다고 가정해봅시다. 이때 최소 스패닝 트리 알고리즘을 활용하여 최적의 해결책을 찾을 수 있습니다. 예를 들어, A, ..