3D Array Implementation

Duration: 6 min

This video lesson is available to enrolled students.

Return to /learn/BIHAR-POLYTECHNIC-LECTURER-COMPUTER-SCIENCE/paper-1-data-structures/array/3d-multi-dim-arrays/asset-3d-array-implementation after enrolling

Inside: a video lesson and guided study material.

Module outline

  1. Discrete Mathematics: Permutation, Combination and Probability / क्रमचय, संचय एवं प्रायिकता, Set Theory, Relations, Functions, Propositional and Predicate Logic, Graph Theory, Group Theory
  2. Digital Logic: Digital Systems & Boolean Basics, Boolean Expression, Boolean Minimization, Logic Gates & Hardware, Combinational Circuit, Sequential Circuits, Number System, Number Representation, Floating Point Rep
  3. Computer Organization and Architecture: Basics of COA, Programming the Basic Computer, Cache Memory Organization, Input Output Organisation, Instr Formats & Modes, Register Transfer and Microoperations, Control Unit Design, Pipelining, Multiprocessors
  4. Programming: Language Design, C Fundamentals, Control Flow, Functions, Arrays & Pointers, Storage Classes, Structures & Enums, DMA, Macros, Scoping & File Handling, OOPS with C++
  5. Data Structures: Introduction to DS, Array, Linked List, Stack, Queue, Tree, Graphs, Hashing
  6. Algorithms: Algorithm Analysis, Time Complexity Analysis, Sorting Algorithms, Greedy Algorithms, Dynamic Programming, Minimum Spanning Trees, Shortest Path Algos, Advanced Algorithms
  7. Theory of Computation: Grammar, Regular Language Properties, Moore & Mealy Machines, Turing Machines
  8. Compiler Design: Intro to Compilers, Lexical Analysis, Grammar & CFG, Syntax Analysis: Top-Down, Syntax Analysis: Bottom-Up, Semantic Analysis & SDT, Intermediate Code Gen, Code Optimization, Run Time Environment, Introduction to TOC, Deterministic FA (DFA), Non-Deterministic FA, Regular Expressions, Pushdown Automata & CFG, Complexity Theory
  9. Operating Systems: Introduction to OS, Process Management, CPU Scheduling, Process Synchronization, Threads & Process Creation, Deadlock, Memory Management, Virtual Memory, Disc Scheduling, File Management, Unix OS, Linux OS, Security
  10. Database Management Systems: Basics of DBMS, ER Diagram, Relational Model & Functional Dependencies, Keys & Integrity Constraints, Normalization (1NF - BCNF), Decomposition Properties & 4NF, File Organization & Indexing, Relational Algebra, SQL, Relational Calculus, Transaction Management, Concurrency Control, ORDBMS, NoSQL
  11. Computer Networks: Introduction to CN, Data Communication, DLL: Access Control, DLL: Flow Control, DLL: Error Control, DLL: Framing, Data Link Layer - Ethernet, Net Layer: IPv4 & Proto, Net Layer: IP Addressing, Net Layer:Routing Protocol, Transport Layer Services, TL: Congestion & UDP, Application Layer, Hardware basics, Network Security
AI summary & chapters

AI Summary

An AI-generated summary of this video lecture.

This educational video lecture focuses on the concept of 3-dimensional arrays in computer science. The instructor begins by visually explaining the structure of a 3D array, showing how it is composed of stacked 2D matrices. He then derives the mathematical formula to calculate the memory location of a specific element within this structure. Finally, the lesson generalizes this concept to N-dimensional arrays, providing a comprehensive formula for calculating element locations in higher-dimensional data structures.

Chapters

  1. 0:00 – 2:00 00:00-02:00

    The video opens with the title "3-Dimensional array" displayed at the top. The instructor introduces the topic, and at 00:56, a detailed diagram appears illustrating a 3D array structure. This diagram shows a stack of 2D grids, color-coded in red, green, and blue, representing different depth levels. The text "row,col,depth" is visible above the grids. The diagram maps these 3D indices (e.g., 0,0,0 to 2,2,2) to a linear sequence at the bottom, demonstrating how the data is stored in memory. A curved arrow indicates the sequential order of storage, emphasizing the row-major order where the last dimension varies fastest.

  2. 2:00 – 5:00 02:00-05:00

    The instructor transitions to deriving the location formula for a 3D array. He writes the array declaration `A[i][j][k]` and defines the lower and upper bounds for each dimension as `L1, U1`, `L2, U2`, and `L3, U3`. He sketches a 3D grid to visualize the dimensions. He then writes the location formula: `Loc(A[i,j,k]) = B + w * [(i - L1)(U2 - L2 + 1)(U3 - L3 + 1) + (j - L2)(U3 - L3 + 1) + (k - L3)]`. He explains that `B` is the base address and `w` is the word size. The formula calculates the offset by multiplying the index difference by the product of the sizes of the subsequent dimensions, ensuring the correct memory address is found.

  3. 5:00 – 5:39 05:00-05:39

    The lecture progresses to the generalization of the concept with a slide titled "N-Dimensional array". The instructor writes the general notation for an N-dimensional array: `A([L1]---[U1]), ([L2]---[U2]), ..., ([LN]---[UN])`. He begins writing the generalized location formula for an element `A[i, j, k, ..., x]`. The formula starts with `B + w * [(i - L1)(U2 - L2 + 1)...(Un - Ln + 1) + (j - L2)... + (x - Ln)]`. This section connects the specific 3D derivation to a broader pattern applicable to any number of dimensions, showing how the product of subsequent dimension sizes is used recursively.

The lecture systematically builds understanding from a visual representation of 3D arrays to a rigorous mathematical derivation. By first establishing the memory layout through diagrams, the instructor makes the abstract concept of 3D indexing concrete. The derivation of the 3D location formula serves as a foundational step, which is then elegantly extended to the N-dimensional case. This progression highlights the recursive nature of array indexing, where the offset calculation for each dimension depends on the sizes of all subsequent dimensions, providing a unified framework for handling multi-dimensional data structures.

Loading lesson…