Data Structure
The Data Structure course provides a rigorous introduction to
fundamental data structures and algorithms that enable efficient
computation. This course follows the 2025 Data Structure Syllabus,
covering algorithm analysis, linear and non-linear structures,
recursion, graph basics, sorting, and searching.
Full weekly schedule (Syllabus): Here
🔍 Course Overview
Students will learn:
- How to design and implement core data structures
- How to analyze time and space complexity
- How different structures are used in real systems (OS, networks, CPS)
- How to translate algorithmic concepts into working code (Python/C/C++)
- How to evaluate trade-offs between structures and algorithms
📘 Main Topics (Expanded)
1. Foundations
- Introduction to algorithms & data structures
- Algorithm specification and analysis
- Python programming for implementing DS/AL
2. Linear Data Structures
- Arrays and array-based operations
- Singly linked lists
- Circular linked lists
- Stacks
- Queues, circular queue, deque, priority queue
3. Non-Linear Data Structures
- Trees and binary trees
- Binary search trees (BST)
- Heaps (min/max)
- Graph structures and graph traversal
4. Algorithmic Tools
- Recursion and recursive thinking
- Sorting (basic & advanced sorting)
- Searching algorithms
- Performance evaluation through exercises & exams
🧪 Labs & Assignments
Hands-on programming labs include:
- Algorithm Description & Specification
- Python exercises (Colab-based)
- Linked list implementation labs
- Stack & Queue tutorials
- Circular linked list construction
- Sorting & searching exercises
- Weekly or bi-weekly coding tasks with deadlines
Labs follow the official 2025 course schedule, with progressive
difficulty and direct links to lecture content.
—
🎓 Teaching Style
- Clear, example-driven explanations
- Coding sessions (Python or C/C++) aligned with theory
- Step-by-step walkthroughs of complex algorithms
- Visualizations and conceptual intros where needed
- Exam-based reinforcement (1st, 2nd, 3rd exams as in syllabus)
👨🏫 Instructor
Prof. Jin Hyun Kim
Cyber Safety Lab · Gyeongsang National University
한국어 강의소개
데이터구조 (Data Structure)
데이터구조(Data Structure) 과목은 효율적인 계산을 가능하게 하는
기초적인 자료구조와 알고리즘을 다루는 핵심 전공 과목입니다.
2025년 강의계획서에 따라,
알고리즘 분석 → 선형 구조 → 비선형 구조 → 재귀 → 그래프 → 정렬 → 탐색
으로 이어지는 전형적인 자료구조 커리큘럼을 체계적으로 학습합니다.
전체 주차별 스케줄은 아래에서 확인 가능합니다: 👉 여기
🔍 강의 개요
학생들은 다음을 학습합니다.
- 주요 자료구조의 개념·구조·구현 방법
- 시간·공간 복잡도의 정확한 분석 능력
- 자료구조 선택에 따른 성능·메모리·활용성 trade-off
- Python 또는 C/C++을 활용한 실전 프로그래밍 구현 능력
- 전공 교과·CPS·로보틱스에서의 자료구조 적용 사례
📘 주요 학습 주제
1. 기초
- 알고리즘과 자료구조 소개
- 알고리즘 기술 및 분석
- Python 기반 자료구조 구현
2. 선형 구조
- 배열(Array)
- 단일 연결 리스트(Singly Linked List)
- 원형 연결 리스트(Circular Linked List)
- 스택(Stack)
- 큐(Queue), 원형 큐, 덱(Deque), 우선순위 큐(Priority Queue)
3. 비선형 구조
- 트리(Tree) 및 이진트리(Binary Tree)
- 이진탐색트리(BST)
- 힙(Heap)
- 그래프(Graph) 구조 및 탐색
4. 알고리즘 기법
- 재귀(Recursion)
- 정렬 알고리즘 (기초 및 고급 정렬)
- 탐색(Search)
- 시험 및 문제 기반 학습
🧪 실습 & 과제
- 알고리즘 기술 실습
- Python 실습(입문 ~ 중급)
- 연결 리스트/스택/큐 구현 실습
- 원형 연결 리스트 Lab
- 정렬·탐색 실습
- 주차별 과제 제출
🎓 수업 방식
- 개념을 직관적으로 설명하는 이론 강의
- Python/C/C++ 기반 코딩 실습
- 시각화 및 예제 중심 설명
- 시험(1·2·3차) 기반 개념 강화
👨🏫 담당 교수
김진현 교수 (Prof. Jin Hyun Kim)
경상국립대학교 사이버안전 연구실