Data Structures Laboratory
Faculty: Faculty of Computer and Information Sciences
Location: 3rd Floor D3-01
Capacity: 60 Students
Responsible Faculty Member:
-
Assoc. Prof. Dr. Kürşat Mustafa KARAOĞLAN
Laboratory Supervisor:
-
Research Assistant Saliha ÖZGÜNGÖR
Laboratory View
General view of Karabük University Faculty of Computer and Information Sciences – Data Structures Laboratory.
Purpose of the Laboratory
The Data Structures Laboratory aims for students to learn data organization, algorithm analysis and memory management topics in a practical manner. This laboratory experimentally teaches how basic data structures (stack, queue, linked list, tree, graph, etc.) are designed, implemented and analyzed in programming languages (especially C/C++ and Python). The aim is to equip students with algorithmic thinking, efficient memory usage and problem-solving skills.
Laboratory Usage Rules
-
The laboratory should only be entered during class or project hours, under the supervision of an instructor or authorized personnel.
-
Computers, network devices (switch, router, etc.) and cabling systems should only be used for experimental purposes. Connections should not be energized before the experiment without being shown to the instructor.
-
Approval must be obtained from the instructor before any connection or configuration process.
-
Unauthorized intervention in laboratory software, uploading personal files or changing internet settings is prohibited.
-
Each student must keep experiment reports regularly and submit them at the end of the course.
-
At the end of the experiment, connections must be disconnected, computers must be shut down and the desk arrangement must be maintained.
-
In case of damage to laboratory equipment or detection of failure, the situation must be reported to the responsible personnel immediately.
Areas of Use
-
Data Structures and Algorithms course applications
-
Data structure development in C, C++ or Python programming environments
-
Stack, Queue and Linked List applications
-
Implementation of Tree and Graph data structures
-
Analysis of Sorting and Searching algorithms
-
Time complexity (Big-O) calculations and performance measurements
-
Graduation projects and algorithm-based academic research
Learning Outcomes
-
Explains and implements the logic of basic data structures (stack, queue, linked list, tree, graph).
-
Analyzes the performance of different algorithms and selects the appropriate data structure.
-
Performs dynamic memory management (malloc/free, new/delete) operations through programming language.
-
Implements sorting, searching and traversal algorithms.
-
Measures time and memory efficiency, evaluates algorithm complexity.
-
Produces solutions to complex problems with algorithmic thinking.
-
Develops teamwork, code versioning (e.g. Git) and technical reporting skills.
-
Acquires coding habits in accordance with engineering ethics and software standards.