Array in Datenstrukturen (Operationen)
โก Intelligente Zusammenfassung
Ein Array in der Datenstruktur speichert mehrere Elemente desselben Datentyps an zusammenhรคngenden Speicheradressen, die jeweils รผber einen Index erreichbar sind. Dieses Tutorial erklรคrt das Konzept, warum Arrays wichtig sind und wie man sie erstellt und bearbeitet. Python, C++ und Java mit Beispielen.
Was ist ein Array in der Datenstruktur?
An Array Ein Array ist eine Datenstruktur zum Speichern mehrerer Datenelemente desselben Datentyps. Die Elemente eines Arrays werden in benachbarten Speicherzellen abgelegt, die als Arrays bezeichnet werden. Elemente des Arrays. Die Gesamtzahl der Elemente in einem Array ist seine Lรคnge.
Auf jedes Element wird รผber seine Position zugegriffen, und diese Referenz wird als bezeichnet. Index or Index.
Konzept des Arrays
Konzeptdiagramm von Arrays
Das obige Diagramm veranschaulicht Folgendes:
- Ein Array ist ein Container mit Elementen.
- Elemente haben einen bestimmten Wert und Datentyp, zum Beispiel โABCโ, WAHR oder FALSCH.
- Jedes Element hat einen eigenen Index, รผber den darauf zugegriffen wird.
Hinweis:
- Elemente werden an zusammenhรคngenden Speicherorten gespeichert.
- Ein Index ist immer kleiner als die Gesamtzahl der Array-Elemente.
- Jede als Array deklarierte Variable kann mehrere Werte speichern.
- Fast alle Programmiersprachen kennen das gleiche Konzept von Arrays, unterscheiden sich aber in der Art und Weise, wie sie diese deklarieren und initialisieren.
- Drei Teile bleiben bei allen Initialisierungen gleich: der Array-Name, die Elemente und der Datentyp der Elemente.
Das folgende Diagramm zeigt die Syntax fรผr die Deklaration eines Array in Python und C++Dies zeigt, dass das Konzept dasselbe bleibt, auch wenn die Syntax zwischen den Sprachen leicht variiert.
Verstehen Sie die Syntax von Arrays
- Array-Name: Erforderlich fรผr den einfachen Zugriff auf die Sammlung von Elementen.
- Datentyp: Erforderlich fรผr Typรผberprรผfung und Datenintegritรคt.
- Elemente: die im Array vorhandenen Datenwerte.
Warum brauchen wir Arrays?
- Arrays eignen sich ideal zum Speichern mehrerer Werte in einer einzigen Variablen.
- Sie verarbeiten viele Werte einfach und schnell.
- Das Sortieren und Suchen von Werten ist mit Arrays einfacher.
Erstellen eines Arrays in Python
In PythonArrays unterscheiden sich von Listen: Eine Liste kann Elemente unterschiedlicher Datentypen enthalten, wรคhrend ein Array nur Elemente desselben Datentyps enthalten kann. Python verfรผgt รผber ein separates Modul zur Verarbeitung von Arrays, genannt array, das Sie vor der Verwendung importieren mรผssen.
Hinweis: Das Array muss reelle Zahlen wie ganze Zahlen und Gleitkommazahlen enthalten; Zeichenketten sind nicht zulรคssig.
Der folgende Code erstellt ein Integer-Array in Python zum Speichern von Kontostรคnden:
import array
balance = array.array('i', [300, 200, 100])
print(balance)
Mรถglichkeiten zum Deklarieren eines Arrays in Python
Sie kรถnnen ein Array deklarieren in Python bei der Initialisierung mit folgender Syntax:
arrayName = array.array(typecode, [array_items])
Syntax des Arrays in Python
- Identifikator: Geben Sie einen Namen an, wie Sie es รผblicherweise fรผr Variablen tun.
- Modul: Python verfรผgt รผber ein spezielles Modul namens โarrayโ, das Sie zuerst importieren mรผssen.
- Anleitung: Das Array-Modul verfรผgt รผber eine Methode zur Initialisierung des Arrays, die zwei Argumente entgegennimmt โ Typcode und Elemente.
- Typschlรผssel: Geben Sie den Datentyp mithilfe der verfรผgbaren Typcodes an (siehe Tabelle unten).
- Elemente: Geben Sie die Array-Elemente in eckigen Klammern an, zum Beispiel [130, 450, 103].
Die folgende Tabelle listet die fรผr unterstรผtzte Datentypen verfรผgbaren Typcodes auf.
| Typenschlรผssel | C-Typ | Python Typ | Mindestgrรถรe (Bytes) |
|---|---|---|---|
| 'b' | signiertes Zeichen | int | 1 |
| 'B' | vorzeichenloser char | int | 1 |
| 'u' | Py_UNICODE | Unicode-Zeichen | 2 |
| 'h' | kurz unterschrieben | int | 2 |
| 'H' | unsigned short | int | 2 |
| 'ich' | signiert int | int | 2 |
| 'ICH' | Unsigned int | int | 2 |
| 'l' | lang unterschrieben | int | 4 |
| 'L' | lange nicht signiert | int | 4 |
| 'f' | schweben | schweben | 4 |
| 'd' | doppelt | schweben | 8 |
Wie greife ich auf einen bestimmten Array-Wert zu?
Sie kรถnnen auf jedes Array-Element รผber seinen Index zugreifen.
Syntax:
arrayName[indexNum]
Ejemplo:
balance[1]
Greifen Sie auf ein Array-Element zu
Hier haben wir รผber den Index 1 auf den zweiten Wert des Arrays zugegriffen. Die Ausgabe ist 200, was dem zweiten Wert des Balance-Arrays entspricht.
import array
balance = array.array('i', [300, 200, 100])
print(balance[1])
Ausgang:
200
Feld Operain Python
Das Python Das Array-Modul stellt separate Funktionen fรผr Array-Operationen bereit. Es handelt sich dabei um destruktive Methoden, d. h. die รnderung wird in der Array-Variablen gespeichert.
Insert
Diese Operation fรผgt ein oder mehrere Elemente am Anfang, am Ende oder an einer beliebigen Position in ein Array ein. Sie erwartet zwei Argumente: Index und Wert.
arrayName.insert(index, value)
Ejemplo: Um einen neuen Wert direkt nach Index 1 (den Wert 200) einzufรผgen, verwenden Sie Index 2 in der Einfรผgemethode.
import array
balance = array.array('i', [300, 200, 100])
balance.insert(2, 150)
print(balance)
Ausgang:
array('i', [300, 200, 150, 100])
Lรถschen
Diese Operation lรถscht ein Element aus einem Array anhand seines Wertes und akzeptiert ein einzelnes Argument. Nach der Ausfรผhrung werden die Elemente neu angeordnet und die Indizes neu zugewiesen.
arrayName.remove(value)
Ejemplo:
import array
balance = array.array('i', [300, 200, 150, 100])
balance.remove(150)
print(balance)
Ausgang:
array('i', [300, 200, 100])
Suche
Diese Operation sucht nach einem Element anhand seines Wertes und gibt dessen Index zurรผck. Es handelt sich um eine nicht-destruktive Methode, die die Werte des Arrays nicht verรคndert.
arrayName.index(value)
Ejemplo:
import array
balance = array.array('i', [300, 200, 150, 100])
print(balance.index(150))
Ausgang:
2
Update
Beim Aktualisieren wird der vorhandene Wert an einem bestimmten Index mithilfe eines einfachen Zuweisungsoperators ersetzt.Python Arrays haben kein update() Verfahren.)
arrayName[index] = value
Ejemplo: Um 150 (an Index 2) durch 145 zu ersetzen:
import array
balance = array.array('i', [300, 200, 150, 100])
balance[2] = 145
print(balance)
Ausgang:
array('i', [300, 200, 145, 100])
Traverse
Sie kรถnnen eine Python Array mithilfe einer Schleife:
import array
balance = array.array('i', [300, 200, 100])
for x in balance:
print(x)
Ausgang:
300
200
100
Erstellen eines Arrays in C++
C++ ist flexibler als Python beim Erstellen von Arrays. Sie kรถnnen erstellen C++ Arrays auf drei Arten. Der folgende Code erstellt ein Integer-Array in C++ zum Speichern von Kontostรคnden:
#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;
}
Mรถglichkeiten zum Deklarieren eines Arrays in C++
Sie kรถnnen ein Array auf drei Arten deklarieren, abhรคngig von den Anforderungen Ihres Programms.
Deklaration nach Grรถรe:
dataType arrayName[arraySize]; // e.g. int balance[3];
Deklaration nur mit Array-Elementen:
dataType arrayName[] = {array_items}; // e.g. int balance[] = { 300, 200, 100 };
Erklรคrung nach Grรถรe und Artikeln:
dataType arrayName[arraySize] = {array_items}; // e.g. int balance[3] = { 300, 200, 100 };
Wie man auf einen bestimmten Array-Wert zugreift in C++?
Zugreifen auf ein Array-Element
#include <iostream>
using namespace std;
int main()
{
int balance[3] = { 300, 200, 100 };
cout << balance[1];
return 0;
}
Ausgang:
200
Feld Operain C++
Im Gegensatz zu Pythonin C++ Sie mรผssen die Logik fรผr Einfรผge-, Lรถsch-, Such-, Aktualisierungs- und Durchlaufoperationen selbst programmieren.
Insert
Die Einfรผgelogik ist folgende: Die Elemente des Arrays werden durchlaufen, jeweils an einen hรถheren Index verschoben und anschlieรend wird an der entsprechenden Position ein neues Element eingefรผgt. Das folgende Beispiel enthรคlt fรผnf Elemente und fรผgt die Zahl 150 direkt nach dem Wert 200 ein.
#include <iostream>
#include <stdio.h>
main() {
int pos = 2;
int size = 4;
int balance[] = {300, 200, 100, 50, 0};
printf("BEFORE INSERT:\n");
for(int i = 0; i < 5; i++) {
printf("%d\n", balance[i]);
}
/* SHIFT ITEMS TO A GREATER INDEX */
for(int i = size; i >= pos; i--) {
balance[i+1] = balance[i];
}
/* INSERT VALUE AT THE DESIRED INDEX */
balance[pos] = 150;
printf("AFTER INSERT:\n");
for(int i = 0; i < 6; i++) {
printf("%d\n", balance[i]);
}
}
Feld Operain Java
Lasst uns ein Programm erstellen in Java das die Grรถรe und die Werte der Array-Elemente vom Benutzer entgegennimmt.
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] + " ");
}
}
}
รndern Sie ein Element in einem Java Feld
Aktualisiere ein Element anhand seines Index.
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 to change");
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] + " ");
}
}
}
Zugriffselemente in einem Java Feld
Gib alle Array-Elemente aus, indem du das Array durchlรคufst.
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] + " ");
}
}
}






