본문 바로가기
반응형

자바3

힙 정렬 Heap Sort 자바 Max Heap 최대 힙 Heap Sort 완전 이진 트리 🔷 1. 힙 정렬(Heap Sort)이란?힙 정렬은 **완전 이진 트리 형태의 자료구조인 '힙(Heap)'**을 기반으로 하는 정렬 알고리즘입니다.힙(Heap)은 최대 힙(Max Heap) 또는 최소 힙(Min Heap) 이 될 수 있습니다.힙 정렬은 주로 최대 힙을 사용해서 내림차순 → 오름차순 정렬을 구현합니다.🔷 2. 왜 힙 정렬인가? (배경과 장점)정렬 방식메모리 추가 필요 여부시간 복잡도 (최악)안정성특징힙 정렬❌ in-placeO(n log n)❌정렬 안정성은 없지만, 메모리 효율 높음퀵 정렬❌ in-placeO(n²)❌보통 빠르지만, 최악 케이스 존재병합 정렬⭕ extra memoryO(n log n)✅메모리 사용, 안정 정렬 가능 힙 정렬은 추가 메모리 없이 항상 O(n log n)을 .. 2025. 6. 20.
스택 Stack 접시 쌓기 LIFO 큐 Queue 줄 서기 FIFO 자바 자료구조 알고리즘 📌 스택 (Stack) — "접시 쌓기"비유우리가 식당에서 접시를 쌓아두는 모습을 생각해보자.새 접시는 항상 위에 올려.꺼낼 때는 위에서부터 꺼내.이걸 LIFO (Last In, First Out, 마지막에 들어간 것이 먼저 나온다) 라고 해.예시 상황웹 브라우저의 "뒤로가기"프로그램의 함수 호출 (Call Stack)기본 동작동작설명push()데이터를 위에 올린다 (넣기)pop()위에 있는 데이터를 꺼낸다 (빼기)peek()가장 위의 데이터가 뭔지 확인 📌 스택 (Stack) — 접시 쌓기 (LIFO) [ Top ] ┌───────┐ ← 마지막 넣은 것 (먼저 나온다: pop) │ 데이터3 │ ├───────┤ │ 데이터2 │ ├───────┤ │ 데이터1 │ ← 처음 넣은.. 2025. 6. 9.
자바프로그래밍 다형성 toString 인터페이스 내부클래스 자바 ObjectClass equalsMethod ✅ 08장 다형성과 내부 클래스📌 1. 클래스의 다형성 – 가장 중요한 개념“부모 타입의 변수로 자식 객체를 담아 사용할 수 있다”Employee emp = new Salesman(); // OK Employee emp = new Director(); // OK✔️ 핵심 포인트:다형성은 **"한 가지 타입으로 여러 객체를 표현"**할 수 있는 것**공통된 부모 클래스(또는 인터페이스)**를 이용해 다양한 자식 객체를 하나의 변수로 제어✔️ 결과:유지보수 용이, 확장성 ↑메서드 재정의(오버라이딩)를 통해 각각의 객체가 자신의 방식대로 동작📌 2. Object 클래스와 toString() / equals()toString()public String toString() { return getClass().. 2025. 5. 25.
반응형