Array in Data Structure: Ce este, Arrays Operațiuni [Exemple]
Ce este Array în Data Structure?
An mulțime este o structură de date pentru stocarea mai multor elemente de date care au un tip de date similar. Elementele unei matrice sunt alocate în locații de memorie adiacente. Aceste locații de memorie sunt numite element a acelei matrice. Se numește numărul total de elemente dintr-o matrice lungime.
Detaliile unei matrice sunt accesate despre poziția sa. Această referință se numește index or indicele.
Conceptul de matrice

Diagrama de mai sus ilustrează faptul că:
- Un tablou este un container de elemente.
- Elementele au o anumită valoare și tip de date, cum ar fi „ABC”, TRUE sau FALSE etc.
- Fiecare element are, de asemenea, propriul index, care este folosit pentru a accesa elementul.
Notă:
- Elementele sunt stocate în locații de memorie adiacente.
- Un index este întotdeauna mai mic decât numărul total de elemente ale matricei.
- În ceea ce privește sintaxa, orice variabilă care este declarată ca matrice poate stoca mai multe valori.
- Aproape toate limbile au aceeași înțelegere a matricelor, dar au moduri diferite de a le declara și inițializa.
- Cu toate acestea, trei părți vor rămâne întotdeauna comune în toate inițializările, adică numele matricei, elementele și tipul de date al elementelor.
Următoarea diagramă ilustrează sintaxa declarării an matrice în Python si C++ pentru a prezenta că înțelegerea rămâne aceeași, deși sintaxa poate varia ușor în diferite limbi.
- Nume matrice: necesare pentru referire ușoară la colecția de elemente
- Tipul de date: necesare pentru verificarea tipului și integritatea datelor
- elemente: acestea sunt valorile datelor prezente într-o matrice
De ce avem nevoie de matrice?
Iată câteva motive pentru a utiliza matrice în structura de date:
- Matricele sunt cele mai bune pentru stocarea mai multor valori într-o singură variabilă
- Matricele sunt mai bune la procesarea multor valori ușor și rapid
- Sortarea și căutarea valorilor este mai ușoară în matrice
Crearea unui Array în Python
In Python, tablourile sunt diferite de liste; listele pot avea elemente matrice de tipuri de date, în timp ce matricele pot avea doar elemente de același tip de date.
Python are un modul separat pentru manipularea matricelor numit array, pe care trebuie să îl importați înainte de a începe să lucrați la ele.
Notă: Matricea trebuie să conțină numere reale, cum ar fi numere întregi și flotanți, fără șiruri de caractere permise.
Următorul cod ilustrează modul în care puteți crea o matrice întregă în python pentru a stoca soldul contului:
import array balance = array.array('i', [300,200,100]) print(balance)
Modalități de a declara o matrice în Python
Puteți declara o matrice în Python în timp ce îl inițializați folosind următoarea sintaxă.
arrayName = array.array(type code for data type, [array,items])
Următoarea imagine explică sintaxa.
- Identifier: specificați un nume ca de obicei, faceți pentru variabile
- Module: Python are un modul special pentru crearea de matrice, numit „array” – trebuie să îl importați înainte de a-l folosi
- Metodă: modulul de matrice are o metodă de inițializare a matricei. Este nevoie de două argumente, typecode și elemente.
- Cod de tip: specificați tipul de date folosind codurile de tip disponibile (vezi lista de mai jos)
- Elemente de: specificați elementele matricei dintre paranteze pătrate, de exemplu [130,450,103]
Următorul tabel ilustrează codurile de tip disponibile pentru tipurile de date acceptate:
Codul de tip | C Tip | Python Tip | Dimensiunea minimă în octeți |
---|---|---|---|
'c' | car de război | caracter | 1 |
„B” | char nesemnat | int | 1 |
'b' | semnat char | int | 1 |
'tu' | Py_UNICODE | Caracter Unicode | 2 |
'h' | semnat scurt | int | 2 |
„H” | scurt nesemnat | int | 2 |
'I' | semnat int | int | 2 |
'I' | nesemnat int | lung | 2 |
'l' | semnat lung | int | 4 |
„L” | nesemnat mult | lung | 4 |
'F' | pluti | pluti | 4 |
'd' | dubla | pluti | 8 |
Cum se accesează o anumită valoare de matrice?
Puteți accesa orice element de matrice folosind indexul acestuia.
Sintaxă
arrayName[indexNum]
Exemplu:
balance[1]
Următoarea imagine ilustrează conceptul de bază al accesării elementelor matrice prin indexul lor.
Aici, am accesat a doua valoare a matricei folosind indexul său, care este 1. Ieșirea acestuia va fi 200, care este practic a doua valoare a matricei echilibrate.
import array balance = array.array('i', [300,200,100]) print(balance[1])
REZULTATE
200
Mulțime Operații
Modulul matrice al Python are funcții separate pentru efectuarea operațiunilor cu matrice. Aceasta este o metodă distructivă de operare cu matrice, ceea ce înseamnă că modificarea va fi salvată în variabila matrice.
Insera
Cu această operațiune, puteți insera unul sau mai multe elemente într-o matrice la începutul, sfârșitul sau orice index dat al matricei. Această metodă așteaptă două argumente index și valoare.
Sintaxă
arrayName.insert(index, value)
Exemplu:
Să adăugăm o nouă valoare imediat după al doilea element al matricei. În prezent, matricea noastră de echilibru are trei elemente 300, 200 și 100. Deci, care este indexul celui de-al doilea element de matrice cu o valoare de 200 dacă ați spus 1.
Pentru a introduce noua valoare chiar „după” indexul 1, trebuie să faceți referire la indexul 2 în metoda dvs. de inserare, astfel:
import array balance = array.array('i', [300,200,100]) balance.insert(2, 150)
Acum, pentru a verifica dacă noua valoare a fost inserată, introduceți numele matricei și apăsați Enter de pe tastatură:
import array balance = array.array('i', [300,200,100]) balance.insert(2, 150) print(balance)
REZULTATE
array('i', [300,200,150,100])
Șterge
Cu această operație, puteți șterge un element dintr-o matrice după valoare. Această metodă acceptă un singur argument, valoarea. După rularea acestei metode, elementele matricei sunt rearanjate, iar indicii sunt reatribuiți.
Sintaxă
arrayName.remove(value)
Exemplu:
Să eliminăm valoarea 150 din matrice. În prezent, matricea noastră de echilibru are patru elemente 300, 200, 150 și 100. Deci, pentru a elimina 150 din matrice, trebuie doar să introducem 150 în argumentul metodei. Simplu, nu?
import array balance = array.array('i', [300,200,100]) balance.insert(2, 150) print(balance) balance.remove(150)
Acum, pentru a verifica dacă valoarea a fost ștearsă, introduceți numele matricei și apăsați Enter de pe tastatură:
import array balance = array.array('i', [300,200,100]) balance.insert(2, 150) print(balance) balance.remove(150) print(balance)
REZULTATE
array('i', [300,200,100])
Căutare
Cu această operație, puteți căuta un element dintr-o matrice pe baza valorii sale. Această metodă acceptă un singur argument, valoarea. Aceasta este o metodă nedistructivă, ceea ce înseamnă că nu afectează valorile matricei.
Sintaxă
arrayName.index(value)
Exemplu:
Să căutăm valoarea 150 în matrice. În prezent, matricea noastră de echilibru are patru elemente 300, 200, 150 și 100. Deci, pentru a căuta 150 în matrice, trebuie doar să introducem 150 în argumentul metodei. E destul de ușor. Această metodă returnează indexul valorii căutate.
import array balance = array.array('i', [300,200,150,100]) print(balance.index(150))
REZULTATE
2
UPDATE
Această operație este destul de similară cu metoda de inserare, cu excepția faptului că va înlocui valoarea existentă la indexul dat. Acest lucru înseamnă pur și simplu să atribuie o nouă valoare la indexul dat. Această metodă așteaptă două argumente index și valoare.
Sintaxă
arrayName.udpate(index, value)
Exemplu:
Să presupunem că matricea noastră are patru elemente 300, 200, 150 și 100 și dorim să înlocuim 150 cu 145. Deci, care este indicele 150?
Felicitari, daca ai spus 2.
Pentru a înlocui 150 care are indexul 2, trebuie să faceți referire la indexul 2 utilizând un operator de atribuire simplu, ca acesta:
import array balance = array.array('i', [300,200,150,100]) balance[2] = 145
Acum, pentru a verifica dacă valoarea a fost actualizată, introduceți numele matricei și apăsați Enter de pe tastatură:
import array balance = array.array('i', [300,200,150,100]) balance[2] = 145 print(balance)
REZULTATE
array('i', [300,200,145,100])
Traverse
Puteți traversa o matrice Python folosind bucle, ca aceasta:
import array balance = array.array('i', [300,200,100]) for x in balance: print(x)
REZULTATE
300 200 100
Crearea unui Array în C++
C++ limbă este mai flexibil decât Python când vine vorba de crearea de matrice. Puteți crea C++ matrice în trei moduri menționate mai înainte.
Următorul cod ilustrează modul în care puteți crea o matrice întregă în C++ pentru a stoca soldul contului:
#include <iostream> using namespace std; int main() { int balance[3] = { 300, 200, 100 }; for (int i = 0; i < 3; i++) { cout << "value of i: " << balance[i] << endl; } return 0; }
Modalități de a declara o matrice în C++
Puteți declara o matrice în trei variante de sintaxă. Care se potrivește programului tău; această alegere se bazează pe cerințele programului dumneavoastră.
Declarație după mărime
Sintaxă
dataType arrayName[arraySize];
Exemplu:
int balance[3];
Declarație Inițializare Matrice Numai elemente
Sintaxă
dataType arrayName[] = {array, items};
Exemplu:
int balance[] = { 300, 200, 100 };
Declarație după dimensiune și elemente de matrice de inițializare
Sintaxă
dataType arrayName[arraySize] = {array, items};
Exemplu:
int balance[3] = { 300, 200, 100 };
Cum se accesează o anumită valoare de matrice?
Puteți accesa orice element de matrice folosind indexul acestuia.
Sintaxă
arrayName[indexNum]
Exemplu:
balance[1]
Următoarea imagine ilustrează conceptul de bază al accesării elementelor matrice prin indexul lor.
Aici, am accesat a doua valoare a matricei folosind indexul său, care este 1. Ieșirea acestuia va fi 200, care este practic a doua valoare a matricei de echilibru.
#include <iostream> using namespace std; int main() { int balance[3] = { 300, 200, 100 }; cout << balance[1]; return 0; }
producție
200
Mulțime Operațiuni în C++
Spre deosebire de Python, În C++ trebuie să programați singur logica pentru efectuarea operațiilor de inserare, ștergere, actualizare de căutare și traversare C++ matrici.
Insera
Logica operației de inserare este următoarea:
- parcurge elementele matricei
- mutați-le la un indice mai mare
- adăugați un nou element de matrice la un index dat
În exemplul următor, avem 5 elemente în matricea de sold și dorim să adăugăm un nou articol imediat după valoarea 200. Aceasta înseamnă că trebuie să mutam toate articolele după 200 la un index mai mare și apoi să introducem noul nostru valoare de 150.
#include <iostream> #include <stdio.h> main() { int pos = 2; int size = 4; int balance[] = {300,200,100,50,0}; printf("BEFORE INCREMENT: \n"); for(int i = 0; i<5; i++) { printf("%d\n",balance[i]); } /* FOR SHIFTING ITEMS TO A GREATER INDEX */ for(int i = size; i >= pos; i--) { balance[i+1]=balance[i]; } /* FOR INSERTING VALUE AT OUR DESIRED INDEX */ balance[pos] = 150; printf("AFTER INCREMENT: \n"); /* FOR PRINTING THE NEW ARRAY */ for(int i = 0; i<6; i++) { printf("%d\n",balance[i]); } }
producție
BEFORE INCREMENT 300 200 100 50 0 AFTERINCREMENT 300 200 150 100 50 0
Mulțime Operațiuni în Java
Să creăm o programare în Java, in acest program matrice în Java vom accepta dimensiunea și valoarea elementelor matricei de la utilizator.
import java.util.Scanner; public class AddElements { public static void main(String[] args) { Scanner sc=new Scanner(System.in); System.out.println("Enter the size of the array"); int n=sc.nextInt(); int arr[]=new int[n]; System.out.println("Enter Elements in the array"); for(int i=0;i<n;i++) { arr[i]=sc.nextInt(); } System.out.println("Elements in the array"); for(int j=0;j<n;j++) { System.out.print(arr[j]+" "); } } }
Ieșire: -
Enter the size of the array 5 Enter Elements in the array 1 2 3 4 5 Elements in the array 1 2 3 4 5
Modificați elementul în matrice: -
Actualizați un element după indexul dat.
Program în Java pentru modul de modificare a elementelor dintr-o matrice
import java.util.Scanner; public class ModifyElement { public static void main(String[] args) { int arr[]={1,2,3,4,5}; int length= arr.length; Scanner sc=new Scanner(System.in); System.out.println("Array Elements Before modify"); for(int i=0;i<length;i++) { System.out.print(arr[i]+" "); } System.out.println("\nEnter the position where you want to change in an array"); int pos=sc.nextInt(); System.out.println("Enter the value"); int val=sc.nextInt(); arr[pos]=val; System.out.println("Array Elements After modify"); for(int j=0;j<length;j++) { System.out.print(arr[j]+" "); } } }
Ieșire: -
Array Elements Before modify 1 2 3 4 5 Enter the position where you want to change in an array 2 Enter the value 8 Array Elements After modify 1 2 8 4 5
Element de acces în matrice: -
Tipăriți toate elementele matricei.
Program în Java pentru cum să traversezi în matrice
public class AccessElements { public static void main(String[] args) { int arr[]={1,2,3,4,5}; int length= arr.length; System.out.println("Array Elements are:-"); for(int i=0;i<length;i++) { System.out.print(arr[i]+" "); } } }
Ieșire: -
Array Elements are:- 1 2 3 4 5
Rezumat
- O matrice este o structură de date pentru stocarea mai multor elemente de date care au un tip de date similar
- Identificatorul, tipul de date, lungimea matricei, elementele și indexul sunt părțile majore ale unei matrice
- Utilizați indexul pentru procesarea valorilor elementelor matricei
- Matricele au un suport excelent pentru păstrarea intactă a tipului de date
- În majoritatea limbilor, o matrice este creată prin specificarea unui identificator, tip de date și elemente de inclus
- Matricele sunt cele mai bune pentru procesarea unui număr mare de valori și pentru sortarea și căutarea rapidă
- Python are module și metode încorporate pentru a efectua operațiuni de bază ale matricei, cum ar fi inserarea, ștergerea, căutarea, actualizarea și traversarea
- C++ necesită definirea programelor pentru operațiunile de bază ale matricei, cum ar fi inserarea, ștergerea, actualizarea căutării și traversarea