프로그램 코드 이야기

고정 헤더 영역

글 제목

메뉴 레이어

프로그램 코드 이야기

메뉴 리스트

  • 홈
  • 태그
  • 방명록
  • 분류 전체보기
    • 언어
      • Java
      • Spring Frame Work
      • Spring Boot
    • nginx
    • linux
    • tool download
    • 개발자를위한다양한이야기
    • 알고리즘

검색 레이어

프로그램 코드 이야기

검색 영역

컨텐츠 검색

예제 소스

  • 다익스트라 알고리즘(Dijkstra Algorithm)

    2025.06.20 by codeon

  • 이진 탐색(Binary Search)

    2025.06.15 by codeon

  • 선형 탐색(Linear Search)

    2025.06.15 by codeon

다익스트라 알고리즘(Dijkstra Algorithm)

🚀 다익스트라 알고리즘(Dijkstra Algorithm)이란?다익스트라 알고리즘은 그래프에서 하나의 정점에서 다른 모든 정점까지의 최단 경로를 구하는 알고리즘입니다. 네덜란드의 컴퓨터 과학자 **에츠허르 다익스트라(Edsger W. Dijkstra)**가 개발했어요."GPS가 길 찾을 때 최단 경로를 계산하는 기본 원리!"바로 다익스트라 알고리즘입니다. ✅ 주요 특징가중치가 있는 그래프에서 사용됨단, 모든 **간선의 가중치가 0 이상(음수 불가)**이어야 함하나의 시작 노드로부터 모든 노드까지의 최소 비용을 구함🎯 동작 방식 요약시작 정점의 거리는 0, 나머지는 무한대(∞)로 초기화방문하지 않은 노드 중 가장 거리가 짧은 노드 선택해당 노드를 거쳐 갈 수 있는 이웃 노드의 거리 계산 후 업데이트모..

알고리즘 2025. 6. 20. 00:42

이진 탐색(Binary Search)

🔍 이진 탐색(Binary Search) 알고리즘이란?이진 탐색은 정렬된 데이터에서 원하는 값을 빠르게 찾는 알고리즘입니다. 중간 값을 기준으로 검색 범위를 절반씩 줄여가며 탐색하는 방식입니다.쉽게 말하면, 전화번호부에서 이름의 첫 글자를 기준으로 책을 반으로 접으며 찾는 방식이에요. ✅ 전제 조건데이터가 반드시 정렬되어 있어야 함오름차순 또는 내림차순 정렬된 상태에서만 사용 가능✅ 작동 방식예를 들어, 오름차순으로 정렬된 배열 [10, 20, 30, 40, 50, 60, 70] 에서 숫자 50을 찾는 경우:중간 값: 40 → 찾는 값보다 작으므로 오른쪽 절반 [50, 60, 70]으로 탐색 범위 좁힘중간 값: 60 → 찾는 값보다 크므로 왼쪽 절반 [50]으로 좁힘값 50 발견!👉 이런 식으로 반복..

알고리즘 2025. 6. 15. 11:59

선형 탐색(Linear Search)

🔍 선형 탐색(Linear Search) 알고리즘이란?**선형 탐색(또는 순차 탐색)**은 가장 기본적이고 간단한 탐색 알고리즘입니다. 데이터를 처음부터 끝까지 하나씩 차례대로 확인하면서 **찾고자 하는 값(키 값)**을 찾는 방식입니다. ✅ 작동 방식배열이나 리스트의 첫 번째 요소부터 시작합니다.각 요소를 하나씩 검사하여, 찾고자 하는 값인지 확인합니다.찾으면 즉시 반환하고, 끝까지 없으면 “찾을 수 없음”을 반환합니다.🔄 동작 예시배열: [10, 25, 37, 40, 52]찾고자 하는 값: 3710 → 아니고25 → 아니고37 → 찾음! → 인덱스 2 반환📊 시간 복잡도상황시간 복잡도최선 (첫 번째 원소가 정답)O(1)평균O(n)최악 (마지막 원소 또는 없음)O(n) ※ n은 배열의 크기입니다...

알고리즘 2025. 6. 15. 11:50

추가 정보

반응형

인기글

최신글

페이징

이전
1
다음
TISTORY
프로그램 코드 이야기 © Magazine Lab
페이스북 트위터 인스타그램 유투브 메일

티스토리툴바