Skip to content

Latest commit

 

History

History
51 lines (42 loc) · 1.52 KB

File metadata and controls

51 lines (42 loc) · 1.52 KB

CST211 - Data Structures: 2D Array with Pointer Implementation

Overview

Enhanced two-dimensional array using array-of-pointers approach for flexible row management and memory optimization.

Course Information

  • Course: CST211 - Data Structures
  • Assignment: Assignment 3 - 2D Array with Pointers
  • Institution: Oregon Institute of Technology

Features

  • Array-of-pointers implementation for 2D structure
  • Independent row allocation for memory flexibility
  • Support for jagged arrays (variable row lengths)
  • Improved memory management with per-row control
  • Compatible interface with standard 2D array

Technical Details

Implementation Approach

  • Memory Model: Array of row pointers instead of contiguous block
  • Flexibility: Each row can be allocated/deallocated independently
  • Trade-offs: Slight overhead for pointer indirection vs. memory flexibility

Key Improvements

  • Efficient insertion/deletion of rows
  • Support for non-rectangular arrays
  • Better memory utilization for sparse data
  • Reduced fragmentation in dynamic scenarios

Files

  • Visual Studio solution and project files
  • Enhanced Array2D implementation
  • Test cases demonstrating jagged array capabilities

Building

# Open in Visual Studio
Array2Dp.sln

Learning Objectives

  • Pointer-based data structure design
  • Memory layout trade-offs
  • Jagged array implementation
  • Advanced template programming
  • Performance vs. flexibility considerations

Technologies

  • C++
  • Visual Studio
  • Advanced pointer manipulation