Array in gegevensstructuur: wat is, arrays Operaties [Voorbeelden]

Wat is array in gegevensstructuur?

An reeks is een gegevensstructuur voor het opslaan van meer dan รฉรฉn gegevensitem met een vergelijkbaar gegevenstype. De items van een array worden toegewezen op aangrenzende geheugenlocaties. Deze geheugenlocaties worden genoemd geeft je de mogelijkheid van die array. Het totale aantal elementen in een array wordt genoemd lengte.

De details van een array worden benaderd over de positie ervan. Deze referentie wordt genoemd index or subscript.

Concept van matrix

Conceptdiagram van arrays
Conceptdiagram van arrays

Het bovenstaande diagram illustreert dat:

  1. Een array is een container met elementen.
  2. Elementen hebben een specifieke waarde en gegevenstype, zoals โ€œABCโ€, TRUE of FALSE, enz.
  3. Elk element heeft ook zijn eigen index, die wordt gebruikt om toegang te krijgen tot het element.

Let op:

  • Elementen worden opgeslagen op aangrenzende geheugenlocaties.
  • Een index is altijd kleiner dan het totale aantal array-items.
  • In termen van syntaxis kan elke variabele die als een array wordt gedeclareerd, meerdere waarden opslaan.
  • Bijna alle talen hebben hetzelfde begrip van arrays, maar hebben verschillende manieren om deze te declareren en te initialiseren.
  • Drie delen zullen echter altijd gemeenschappelijk blijven in alle initialisaties, namelijk de arraynaam, de elementen en het gegevenstype van de elementen.

Het volgende diagram illustreert de syntaxis van het declareren van een rij in Python en C++ om te presenteren dat het begrip hetzelfde blijft, ook al kan de syntaxis in verschillende talen enigszins variรซren.

Begrijp de syntaxis van arrays

Begrijp de syntaxis van arrays
  • Arraynaam: noodzakelijk voor gemakkelijke verwijzing naar de verzameling elementen
  • Data type: noodzakelijk voor typecontrole en gegevensintegriteit
  • elementen: dit zijn de gegevenswaarden die aanwezig zijn in een array

Waarom hebben we arrays nodig?

Hier volgen enkele redenen voor het gebruik van arrays in de gegevensstructuur:

  • Arrays zijn het beste voor het opslaan van meerdere waarden in รฉรฉn variabele
  • Arrays zijn beter in het gemakkelijk en snel verwerken van veel waarden
  • Het sorteren en doorzoeken van de waarden is eenvoudiger in arrays

Een array maken in Python

In Python, arrays verschillen van lijsten; lijsten kunnen array-items van gegevenstypen bevatten, terwijl arrays alleen items van hetzelfde gegevenstype kunnen bevatten.

Python heeft een aparte module voor het verwerken van arrays, array genaamd, die u moet importeren voordat u eraan gaat werken.

Let op: De matrix moet reรซle getallen bevatten, zoals gehele getallen en drijvende-kommagetallen. Strings zijn niet toegestaan.

De volgende code illustreert hoe u een integer array in Python kunt maken om het saldo van een account op te slaan:

 import array
 balance = array.array('i', [300,200,100])
 print(balance)

Manieren om een โ€‹โ€‹array in te declareren Python

Je kunt een array declareren in Python terwijl het wordt geรฏnitialiseerd met behulp van de volgende syntaxis.

arrayName = array.array(type code for data type, [array,items])

De onderstaande afbeelding legt de syntaxis uit.

Syntaxis van Array in Python

Syntaxis van Array in Python

  1. Identifier: specificeer een naam zoals gewoonlijk voor variabelen
  2. Module: Python heeft een speciale module voor het maken van arrays, genaamd โ€œarrayโ€ โ€“ u moet deze importeren voordat u deze kunt gebruiken
  3. Methode: de arraymodule heeft een methode voor het initialiseren van de array. Er zijn twee argumenten nodig, typecode en elementen.
  4. Type Code: specificeer het gegevenstype met behulp van de beschikbare typecodes (zie onderstaande lijst)
  5. Elementen: geef de elementen van de array op binnen de vierkante haken, bijvoorbeeld [130,450,103]

De volgende tabel illustreert de typecodes die beschikbaar zijn voor ondersteunde gegevenstypen:

Typ code C Type Python Type Minimale grootte in bytes
'C' verkolen karakter 1
'B' Ongetekend char int 1
'b' ondertekend char int 1
'U' Py_UNICODE Unicode-teken 2
'H' kort getekend int 2
'H' ongetekend kort int 2
'ik' aangemeld bij int 2
'IK' niet aangemeld lang 2
'L' lang getekend int 4
'L' lang ongetekend lang 4
'F' drijven drijven 4
'D' verdubbelen drijven 8

Hoe krijg ik toegang tot een specifieke arraywaarde?

U kunt toegang krijgen tot elk array-item door de index ervan te gebruiken.

Syntaxis

arrayName[indexNum]

Voorbeeld:

balance[1]

De volgende afbeelding illustreert het basisconcept van het benaderen van array-items via hun index.

Toegang tot een array-element

Toegang tot een array-element

Hier hebben we toegang gekregen tot de tweede waarde van de array met behulp van de index, die 1 is. De uitvoer hiervan zal 200 zijn, wat in feite de tweede waarde van de gebalanceerde array is.

import array
balance = array.array('i', [300,200,100])
print(balance[1])

OUTPUT

200

reeks Operaties

De arraymodule van Python heeft aparte functies voor het uitvoeren van arraybewerkingen. Dit is een destructieve methode om met arrays te werken, wat betekent dat de wijziging wordt opgeslagen in de arrayvariabele.

Invoegen

Met deze bewerking kunt u een of meer items in een array invoegen aan het begin, einde of een willekeurige index van de array. Deze methode verwacht twee argumenten index en value.

Syntaxis

arrayName.insert(index, value)

Voorbeeld:

Laten we direct na het tweede item van de array een nieuwe waarde toevoegen. Momenteel heeft onze balansarray drie items: 300, 200 en 100. Dus wat is de index van het tweede array-item met een waarde van 200 als je 1 zei.

Om de nieuwe waarde direct โ€œnaโ€ index 1 in te voegen, moet u in uw invoegmethode naar index 2 verwijzen, zoals deze:

import array
balance = array.array('i', [300,200,100])
balance.insert(2, 150)

Om nu te verifiรซren of de nieuwe waarde is ingevoegd, voert u de arraynaam in en drukt u op Enter op het toetsenbord:

import array
balance = array.array('i', [300,200,100])
balance.insert(2, 150)
print(balance)

OUTPUT

array('i', [300,200,150,100])

Verwijdering

Met deze bewerking kunt u รฉรฉn item uit een array verwijderen op basis van waarde. Deze methode accepteert slechts รฉรฉn argument, waarde. Nadat u deze methode hebt uitgevoerd, worden de array-items opnieuw gerangschikt en worden de indices opnieuw toegewezen.

Syntaxis

arrayName.remove(value)

Voorbeeld:

Laten we de waarde 150 uit de array verwijderen. Momenteel heeft onze balance-array vier items: 300, 200, 150 en 100. Om 150 uit de array te verwijderen, hoeven we dus alleen maar 150 in het methode-argument te typen. Simpel, toch?

import array
balance = array.array('i', [300,200,100])
balance.insert(2, 150)
print(balance)
balance.remove(150)

Om nu te verifiรซren of de waarde is verwijderd, voert u de arraynaam in en drukt u op Enter op het toetsenbord:

import array
balance = array.array('i', [300,200,100])
balance.insert(2, 150)
print(balance)
balance.remove(150)
print(balance)

OUTPUT

 array('i', [300,200,100])

ZOEKEN

Met deze bewerking kunt u zoeken naar een item in een array op basis van de waarde ervan. Deze methode accepteert slechts รฉรฉn argument, value. Dit is een niet-destructieve methode, wat betekent dat het de arraywaarden niet beรฏnvloedt.

Syntaxis

arrayName.index(value)

Voorbeeld:

Laten we zoeken naar de waarde van 150 in de array. Momenteel heeft onze balance-array vier items: 300, 200, 150 en 100. Dus om 150 in de array te zoeken, hoeven we alleen maar 150 in het methode-argument te typen. Dat is vrij eenvoudig. Deze methode retourneert de index van de gezochte waarde.

import array
balance = array.array('i', [300,200,150,100])
print(balance.index(150))

OUTPUT

2

UPDATE

Deze bewerking is vrijwel gelijk aan de insert-methode, behalve dat deze de bestaande waarde op de gegeven index vervangt. Dit betekent dat er gewoon een nieuwe waarde op de gegeven index wordt toegewezen. Deze methode verwacht twee argumenten: index en value.

Syntaxis

arrayName.udpate(index, value)

Voorbeeld:

Stel dat onze array vier items heeft: 300, 200, 150 en 100, en we willen 150 vervangen door 145. Dus wat is de index 150?

Complimenten, als je 2 zei.

Om 150 met index 2 te vervangen, moet u naar index 2 verwijzen met behulp van een eenvoudige toewijzingsoperator, zoals deze:

import array
balance = array.array('i', [300,200,150,100])
balance[2] = 145

Om te controleren of de waarde is bijgewerkt, voert u nu de arraynaam in en drukt u op Enter op het toetsenbord:

import array
balance = array.array('i', [300,200,150,100])
balance[2] = 145
print(balance)

OUTPUT

array('i', [300,200,145,100])

Doorkruisen

Je kunt een Python-array doorlopen met behulp van lussen, zoals deze:

import array
balance = array.array('i', [300,200,100])
for x in balance:
	print(x)

OUTPUT

300
200
100

Een array maken in C++

C++ taal is flexibeler dan Python als het gaat om het maken van arrays. Je kunt creรซren C++ arrays op de drie hierboven genoemde manieren.

De volgende code illustreert hoe u een integer array kunt maken in C++ rekeningsaldo opslaan:

#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;
}

Manieren om een โ€‹โ€‹array in te declareren C++

U kunt een array in drie syntaxisvarianten declareren. Welke past bij jouw programma; deze keuze is gebaseerd op uw programmavereisten.

Aangifte per maat

Syntaxis

dataType arrayName[arraySize];

Voorbeeld:

int balance[3];

Alleen array-items voor aangifte-initialisatie

Syntaxis

dataType arrayName[] = {array, items};

Voorbeeld:

int balance[] = { 300, 200, 100 };

Declaratie per grootte en initialisatiearray-items

Syntaxis

dataType arrayName[arraySize] = {array, items};

Voorbeeld:

int balance[3] = { 300, 200, 100 };

Hoe krijg ik toegang tot een specifieke arraywaarde?

U kunt toegang krijgen tot elk array-item door de index ervan te gebruiken.

Syntaxis

arrayName[indexNum]

Voorbeeld:

balance[1]

De volgende afbeelding illustreert het basisconcept van het benaderen van array-items via hun index.

Toegang krijgen tot een arrayelement

Toegang krijgen tot een arrayelement

Hier hebben we toegang gekregen tot de tweede waarde van de array met behulp van de index, die 1 is. De uitvoer hiervan zal 200 zijn, wat in feite de tweede waarde van de balance-array is.

#include <iostream>
using namespace std;

int main()
{
  int balance[3] = { 300, 200, 100 };
  cout << balance[1];

  return 0;
}

uitgang

200

reeks Operain C++

Anders Pythonin C++ U moet zelf de logica programmeren voor het uitvoeren van de invoeg-, verwijder-, zoek-, update- en doorloopbewerkingen op C++ reeksen.

Invoegen

De logica voor de invoegbewerking is als volgt:

  • loop door de array-items
  • verplaats ze naar een grotere index
  • voeg een nieuw array-item toe aan een bepaalde index

In het volgende voorbeeld hebben we 5 items in de balance-array en willen we een nieuw item toevoegen net na de waarde 200. Dit betekent dat we alle items na 200 naar een hogere index moeten verschuiven en vervolgens onze nieuwe waarde van 150 moeten invoegen.

#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]);
   }
}

uitgang

BEFORE INCREMENT
300
200
100
50
0
AFTERINCREMENT
300
200
150
100
50
0

reeks Operain Java

Laten we een programmering maken JavaIn deze array-programma in Java we accepteren de grootte en de waarde van de array-elementen van de gebruiker.

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]+" ");
        }
    }
}

Uitgang: -

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 

Wijzig element in array: -

Update een element met de gegeven index.

Programma in Java voor het wijzigen van elementen in een array

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]+" ");
        }
    }
}

Uitgang: -

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 

Toegangselement in array: -

Druk alle array-elementen af.

Programma in Java voor hoe te Traverseren in een array

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]+" ");
        }

    }
}

Uitgang: -

Array Elements are:-
1 2 3 4 5 

Samenvatting

  • Een array is een gegevensstructuur voor het opslaan van meerdere gegevensitems met een vergelijkbaar gegevenstype
  • Identificatie, gegevenstype, arraylengte, elementen en index zijn de belangrijkste onderdelen van een array
  • Gebruik de index voor het verwerken van de waarden van array-elementen
  • Arrays bieden uitstekende ondersteuning om het gegevenstype intact te houden
  • In de meeste talen wordt een array gemaakt door een ID, gegevenstype en op te nemen elementen op te geven
  • Arrays zijn het meest geschikt voor het verwerken van een groot aantal waarden en voor snel sorteren en zoeken
  • Python heeft modules en ingebouwde methoden om basisbewerkingen in een array uit te voeren, zoals invoegen, verwijderen, zoeken, bijwerken en doorkruisen
  • C++ heeft behoefte aan het definiรซren van programma's voor basisbewerkingen in een array, zoals invoegen, verwijderen, zoeken, updaten en doorkruisen

Vat dit bericht samen met: