Arrays (Introduction to Array Data Structure) Notes | Basic Computer Engineering | RGPV BTech First Year

Arrays (Introduction to Array Data Structure) Notes | Basic Computer Engineering | RGPV BTech First Year


Arrays (Introduction to Array Data Structure)

Data Structure рдореЗрдВ Array рд╕рдмрд╕реЗ рдореВрд▓рднреВрдд (Fundamental) рддрдерд╛ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдиреЗ рд╡рд╛рд▓рд╛ Linear Data Structure рд╣реИред Array рд╕рдорд╛рди Data Type рдХреЗ рдЕрдиреЗрдХ Elements рдХреЛ рдПрдХ рд╣реА Variable Name рдХреЗ рдЕрдВрддрд░реНрдЧрдд рд▓рдЧрд╛рддрд╛рд░ (Contiguous) Memory Locations рдореЗрдВ Store рдХрд░рддрд╛ рд╣реИред рдкреНрд░рддреНрдпреЗрдХ Element рдХрд╛ рдЕрдкрдирд╛ рдПрдХ Index Number рд╣реЛрддрд╛ рд╣реИ рдЬрд┐рд╕рдХреА рд╕рд╣рд╛рдпрддрд╛ рд╕реЗ рдХрд┐рд╕реА рднреА Element рдХреЛ рд╕реАрдзреЗ (Directly) Access рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

Database Systems, Operating Systems, Artificial Intelligence, Machine Learning, Graphics Programming, Scientific Computing рддрдерд╛ Enterprise Software рдореЗрдВ Arrays рдХрд╛ рд╡реНрдпрд╛рдкрдХ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред Stack, Queue, Heap, Hash Table рддрдерд╛ Matrix рдЬреИрд╕реА рдХрдИ Advanced Data Structures рдХреА рдЖрдзрд╛рд░рд╢рд┐рд▓рд╛ рднреА Array рд╣реА рд╣реИред


Introduction to Arrays

рдпрджрд┐ рдХрд┐рд╕реА Program рдореЗрдВ рд╕рдорд╛рди рдкреНрд░рдХрд╛рд░ рдХреЗ рдмрд╣реБрдд рд╕рд╛рд░реЗ Data Store рдХрд░рдиреЗ рд╣реЛрдВ, рддреЛ рдкреНрд░рддреНрдпреЗрдХ Value рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ-рдЕрд▓рдЧ Variable рдмрдирд╛рдирд╛ рдЙрдЪрд┐рдд рдирд╣реАрдВ рд╣реЛрддрд╛ред рдЗрд╕рд╕реЗ Program рдмрдбрд╝рд╛ рддрдерд╛ рдХрдард┐рди рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди Array рджреНрд╡рд╛рд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

Array Data рдХреЛ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рд░реВрдк рд╕реЗ Store рдХрд░рддрд╛ рд╣реИ рддрдерд╛ рдкреНрд░рддреНрдпреЗрдХ Element рдХреЛ рдЙрд╕рдХреЗ Index рджреНрд╡рд╛рд░рд╛ Access рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред C/C++ рддрдерд╛ рдЕрдзрд┐рдХрд╛рдВрд╢ Programming Languages рдореЗрдВ Array рдХрд╛ рдкрд╣рд▓рд╛ Index 0 рд╣реЛрддрд╛ рд╣реИред


Definition of Array

Array рд╕рдорд╛рди Data Type рдХреЗ рдЕрдиреЗрдХ Elements рдХрд╛ рдРрд╕рд╛ Collection рд╣реИ рдЬреЛ рд▓рдЧрд╛рддрд╛рд░ Memory Locations рдореЗрдВ Store рд╣реЛрддреЗ рд╣реИрдВ рддрдерд╛ рдкреНрд░рддреНрдпреЗрдХ Element рдХреЛ рдЙрд╕рдХреЗ Index Number рджреНрд╡рд╛рд░рд╛ Access рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

Array = Collection of Same Data Type Elements Stored in Contiguous Memory Locations

Need of Arrays

  • Large Amount of Similar Data Store рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред
  • Fast Random Access рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред
  • Searching рддрдерд╛ Sorting рдЖрд╕рд╛рди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдПред
  • Memory Management Improve рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред
  • Complex Data Processing рдХреЛ рд╕рд░рд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдПред
  • Code Length рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред

Characteristics of Arrays

  • Linear Data Structure.
  • Contiguous Memory Allocation.
  • Stores Same Data Type.
  • Supports Random Access.
  • Fixed Size.
  • Easy Traversal.

Advantages of Arrays

  • Fast Element Access.
  • Simple Implementation.
  • Memory Efficient.
  • Easy Traversing.
  • Supports Matrix Representation.
  • Foundation for Advanced Data Structures.

Limitations of Arrays

  • Fixed Size.
  • Stores Only Same Type Data.
  • Insertion and Deletion are Costly.
  • Memory Wastage May Occur.
  • Requires Contiguous Memory.

Types of Arrays

  1. One Dimensional Array
  2. Two Dimensional Array
  3. Multi-Dimensional Array

One Dimensional Array

One Dimensional Array (1D Array) рд╕рдмрд╕реЗ рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░рдХрд╛рд░ рдХрд╛ Array рд╣реИ рдЬрд┐рд╕рдореЗрдВ Elements рдХреЗрд╡рд▓ рдПрдХ Index рджреНрд╡рд╛рд░рд╛ Access рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ Linear List рдХреЛ Store рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

int arr[5]={10,20,30,40,50};

Two Dimensional Array

Two Dimensional Array рдореЗрдВ Data Rows рддрдерд╛ Columns рдХреЗ рд░реВрдк рдореЗрдВ Store рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдореБрдЦреНрдп рд░реВрдк рд╕реЗ Matrix Representation рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

int matrix[3][3];

Multi-Dimensional Array

рдЬрдм Array рдореЗрдВ рджреЛ рд╕реЗ рдЕрдзрд┐рдХ Dimensions рд╣реЛрддреА рд╣реИрдВ рддрдм рдЙрд╕реЗ Multi-Dimensional Array рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ Scientific Computing, Image Processing рддрдерд╛ Graphics Programming рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

int cube[2][3][4];

Memory Representation of Array

Array рдХреЗ рд╕рднреА Elements рд▓рдЧрд╛рддрд╛рд░ Memory Locations рдореЗрдВ Store рд╣реЛрддреЗ рд╣реИрдВред рдкреНрд░рддреНрдпреЗрдХ рдЕрдЧрд▓реЗ Element рдХрд╛ Address рдкрд┐рдЫрд▓реЗ Element рдХреЗ рддреБрд░рдВрдд рдмрд╛рдж рд╣реЛрддрд╛ рд╣реИред рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ Array рдореЗрдВ Random Access рдмрд╣реБрдд рддреЗрдЬрд╝ рд╣реЛрддрд╛ рд╣реИред

Index Value Memory Address
0 10 1000
1 20 1004
2 30 1008
3 40 1012
4 50 1016

Array Operations

Array рдкрд░ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдореБрдЦреНрдп Operations рдХреЛ Array Operations рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрди Operations рдХреА рд╕рд╣рд╛рдпрддрд╛ рд╕реЗ Array рдХреЗ Data рдХреЛ Access, Modify рддрдерд╛ Manage рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдкреНрд░рдореБрдЦ Operations рд╣реИрдВ Traversing, Insertion, Deletion рддрдерд╛ Searchingред

Operation Purpose
Traversing Visit Every Element
Insertion Insert New Element
Deletion Remove Existing Element
Searching Find Required Element

Traversing

Traversing рдХрд╛ рдЕрд░реНрде Array рдХреЗ рдкреНрд░рддреНрдпреЗрдХ Element рдХреЛ рдПрдХ-рдПрдХ рдХрд░рдХреЗ Access рдХрд░рдирд╛ рд╣реИред рд╕рд╛рдорд╛рдиреНрдпрддрдГ Traversing рдХреЗ рд▓рд┐рдП Loop рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

for(int i=0;i<5;i++) {   cout << arr[i]; }

Insertion

Insertion рд╡рд╣ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ Array рдореЗрдВ рдХрд┐рд╕реА рдирдП Element рдХреЛ Insert рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрджрд┐ рдмреАрдЪ рдореЗрдВ рдирдпрд╛ Element Insert рдХрд░рдирд╛ рд╣реЛ рддреЛ рдмрд╛рдж рдХреЗ Elements рдХреЛ Shift рдХрд░рдирд╛ рдкрдбрд╝рддрд╛ рд╣реИред

Position = 2 Insert = 25 Result: 10 20 25 30 40 50

Deletion

Deletion рд╡рд╣ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдХрд┐рд╕реА Existing Element рдХреЛ Array рд╕реЗ рд╣рдЯрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред Deletion рдХреЗ рдмрд╛рдж Remaining Elements рдХреЛ Left Side рдореЗрдВ Shift рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

Delete = 30 Result: 10 20 40 50

Searching

Searching рдХрд╛ рдЕрд░реНрде Array рдореЗрдВ рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ Element рдХреЛ рдЦреЛрдЬрдиреЗ рд╕реЗ рд╣реИред рдЫреЛрдЯреЗ Arrays рдореЗрдВ рд╕рд╛рдорд╛рдиреНрдпрддрдГ Linear Search рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрдмрдХрд┐ Sorted Arrays рдореЗрдВ Binary Search рдЕрдзрд┐рдХ Efficient рд╣реЛрддреА рд╣реИред

Element = 40 Result: Found at Index 3

Common Errors

  • Accessing Invalid Index.
  • Array Index Out of Bounds.
  • Incorrect Array Size.
  • Improper Element Shifting.
  • Using Wrong Loop Condition.
  • Memory Overflow.

Best Practices

  • Always Validate Array Index.
  • Choose Proper Array Size.
  • Use Loops Efficiently.
  • Prefer Binary Search on Sorted Arrays.
  • Avoid Duplicate Code.
  • Optimize Memory Utilization.

Applications of Arrays

  • Matrix Representation.
  • Database Management Systems.
  • Image Processing.
  • Scientific Computing.
  • Artificial Intelligence.
  • Machine Learning.
  • Operating Systems.
  • Compiler Design.
  • Game Development.
  • Network Programming.

Industrial Importance

Array рдЖрдзреБрдирд┐рдХ Computer Science рддрдерд╛ Software Engineering рдХрд╛ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг Data Structure рд╣реИред Database Engines, Operating Systems, Graphics Applications, Artificial Intelligence, Machine Learning, Scientific Simulations рддрдерд╛ High Performance Computing рдореЗрдВ Arrays рдХрд╛ рд╡реНрдпрд╛рдкрдХ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЕрдиреЗрдХ Advanced Data Structures рдЬреИрд╕реЗ Heap, Hash Table рддрдерд╛ Matrix Implementations рднреА Arrays рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реЛрддреЗ рд╣реИрдВред


Viva Questions

  1. What is an Array?
  2. Why are Arrays used?
  3. What is One Dimensional Array?
  4. What is Two Dimensional Array?
  5. What is Traversing?
  6. Explain Array Insertion.
  7. Explain Array Deletion.
  8. What is Linear Search?
  9. Differentiate Linear Search and Binary Search.
  10. State the advantages of Arrays.

Exam Oriented Important Questions

  1. Define Array with suitable examples.
  2. Explain the characteristics of Arrays.
  3. Describe the types of Arrays.
  4. Explain Memory Representation of Arrays.
  5. Write short notes on Traversing, Insertion and Deletion.
  6. Explain Searching Techniques in Arrays.
  7. Discuss the applications of Arrays.
  8. Explain the Industrial Importance of Arrays.

Conclusion

Array рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг Linear Data Structure рд╣реИ рдЬреЛ рд╕рдорд╛рди рдкреНрд░рдХрд╛рд░ рдХреЗ Data рдХреЛ рд▓рдЧрд╛рддрд╛рд░ Memory Locations рдореЗрдВ Store рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдХреА рд╕рд╣рд╛рдпрддрд╛ рд╕реЗ Data рдХреЛ рддреЗрдЬрд╝реА рд╕реЗ Access рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рддрдерд╛ Searching, Sorting рдПрд╡рдВ рдЕрдиреНрдп Algorithms рдХреЛ рдкреНрд░рднрд╛рд╡реА рдврдВрдЧ рд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред Arrays рдХреА рдордЬрдмреВрдд рд╕рдордЭ Stack, Queue, Linked List, Heap рддрдерд╛ рдЕрдиреНрдп Advanced Data Structures рд╕реАрдЦрдиреЗ рдХреА рдЖрдзрд╛рд░рд╢рд┐рд▓рд╛ рдорд╛рдиреА рдЬрд╛рддреА рд╣реИред

Related Articles

Manipulators in C++ Notes | endl, setw, setprecision, setfill | Basic Computer Engineering | RGPV BTech First Year

0...

Read More тЖТ

Type Conversion in C++ Notes | Basic Computer Engineering | RGPV BTech First Year

Type Co...

Read More тЖТ

Assignment Operator in C++ Notes | Basic Computer Engineering | RGPV BTech First Year

Assignm...

Read More тЖТ

Copy Constructor in C++ Notes | Basic Computer Engineering | RGPV BTech First Year

Copy Co...

Read More тЖТ

this Pointer in C++ Notes | Basic Computer Engineering | RGPV BTech First Year

this Po...

Read More тЖТ