Announcements
Data Structures Laboratory

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

Karabük University Faculty of Computer and Information Sciences Data Structures Laboratory general 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.