Array i datastruktur: Hvad er arrays Operationer [Eksempler]
Hvad er Array i datastruktur?
An matrix er en datastruktur til lagring af mere end รฉt dataelement, der har en lignende datatype. Elementerne i et array er allokeret pรฅ tilstรธdende hukommelsesplaceringer. Disse hukommelsessteder kaldes elementer af det array. Det samlede antal elementer i et array kaldes lรฆngde.
Der er adgang til detaljerne for et array om dets position. Denne reference kaldes indeks or sรฆnket.
Begrebet Array

Ovenstรฅende diagram illustrerer, at:
- Et array er en beholder af elementer.
- Elementer har en specifik vรฆrdi og datatype, sรฅsom "ABC", TRUE eller FALSE osv.
- Hvert element har ogsรฅ sit eget indeks, som bruges til at fรฅ adgang til elementet.
Bemรฆrk:
- Elementer gemmes pรฅ sammenhรฆngende hukommelsesplaceringer.
- Et indeks er altid mindre end det samlede antal array-elementer.
- Med hensyn til syntaks kan enhver variabel, der er erklรฆret som et array, gemme flere vรฆrdier.
- Nรฆsten alle sprog har den samme forstรฅelse af arrays, men har forskellige mรฅder at deklarere og initialisere dem pรฅ.
- Tre dele vil dog altid forblive fรฆlles i alle initialiseringer, dvs. matrixnavn, elementer og datatypen for elementer.
Det fรธlgende diagram illustrerer syntaksen for at erklรฆre en rรฆkke ind Python og C++ at vise, at forstรฅelsen forbliver den samme, selvom syntaksen kan variere lidt pรฅ forskellige sprog.
- Array navn: nรธdvendigt for let reference til samlingen af โโelementer
- Datatype: nรธdvendig for typekontrol og dataintegritet
- elementer: disse er de datavรฆrdier, der findes i et array
Hvorfor har vi brug for arrays?
Her er nogle grunde til at bruge arrays i datastruktur:
- Arrays er bedst til at gemme flere vรฆrdier i en enkelt variabel
- Arrays er bedre til at behandle mange vรฆrdier nemt og hurtigt
- Det er nemmere at sortere og sรธge i vรฆrdierne i arrays
Oprettelse af et array i Python
In Python, arrays er forskellige fra lister; lister kan have matrixelementer af datatyper, hvorimod matrixer kun kan have elementer af samme datatype.
Python har et separat modul til hรฅndtering af arrays kaldet array, som du skal importere, fรธr du begynder at arbejde pรฅ dem.
Bemรฆrk: Arrayet skal indeholde reelle tal som heltal og flydende, ingen strenge tilladt.
Fรธlgende kode illustrerer, hvordan du kan oprette et heltalsarray i python for at gemme kontosaldo:
import array
balance = array.array('i', [300,200,100])
print(balance)
Mรฅder at erklรฆre et array pรฅ Python
Du kan erklรฆre et array i Python mens du initialiserer den ved hjรฆlp af fรธlgende syntaks.
arrayName = array.array(type code for data type, [array,items])
Fรธlgende billede forklarer syntaksen.
- Identifier: Angiv et navn som normalt, du gรธr for variabler
- Moduler: Python har et specielt modul til at skabe arrays, kaldet "array" - du skal importere det, fรธr du bruger det
- Metode: array-modulet har en metode til initialisering af arrayet. Det krรฆver to argumenter, typekode og elementer.
- Type kode: Angiv datatypen ved hjรฆlp af de tilgรฆngelige typekoder (se listen nedenfor)
- Elements: angiv matrixelementerne inden for firkantede parenteser, for eksempel [130,450,103]
Fรธlgende tabel illustrerer de tilgรฆngelige typekoder for understรธttede datatyper:
| Skriv kode | C Type | Python Type | Minimumsstรธrrelse i bytes |
|---|---|---|---|
| 'c' | char | karakter | 1 |
| 'B' | usigneret char | int | 1 |
| 'b' | underskrevet char | int | 1 |
| 'du' | Py_UNICODE | Unicode-tegn | 2 |
| 'h' | underskrevet kort | int | 2 |
| 'H' | usigneret kort | int | 2 |
| 'jeg' | underskrevet int | int | 2 |
| 'JEG' | usigneret int | lang | 2 |
| 'l' | underskrevet lang | int | 4 |
| 'L' | usigneret lรฆnge | lang | 4 |
| 'F' | flyde | flyde | 4 |
| 'd' | fordoble | flyde | 8 |
Hvordan fรฅr man adgang til en bestemt matrixvรฆrdi?
Du kan fรฅ adgang til ethvert array-element ved at bruge dets indeks.
Syntaks
arrayName[indexNum]
Eksempel:
balance[1]
Det fรธlgende billede illustrerer det grundlรฆggende koncept for at fรฅ adgang til array-elementer ved deres indeks.
Her har vi fรฅet adgang til den anden vรฆrdi af arrayet ved hjรฆlp af dets indeks, som er 1. Outputtet af dette vil vรฆre 200, hvilket grundlรฆggende er den anden vรฆrdi af det balancerede array.
import array
balance = array.array('i', [300,200,100])
print(balance[1])
PRODUKTION
200
Array Operationer
Array-modulet af Python har separate funktioner til at udfรธre array-operationer. Dette er en destruktiv metode til at arbejde med arrays, hvilket betyder, at รฆndringen vil blive gemt i array-variablen.
indsatte
Med denne handling kan du indsรฆtte et eller flere elementer i et array i begyndelsen, slutningen eller et hvilket som helst givet indeks af arrayet. Denne metode forventer to argumenter indeks og vรฆrdi.
Syntaks
arrayName.insert(index, value)
Eksempel:
Lad os tilfรธje en ny vรฆrdi lige efter det andet element i arrayet. I รธjeblikket har vores saldoarray tre elementer 300, 200 og 100. Sรฅ hvad er indekset for det andet matrixelement med en vรฆrdi pรฅ 200, hvis du sagde 1.
For at indsรฆtte den nye vรฆrdi lige "efter" indeks 1, skal du referere til indeks 2 i din indsรฆttelsesmetode, sรฅdan her:
import array
balance = array.array('i', [300,200,100])
balance.insert(2, 150)
For nu at kontrollere, om den nye vรฆrdi er blevet indsat, skal du indtaste array-navnet og trykke pรฅ Enter pรฅ tastaturet:
import array
balance = array.array('i', [300,200,100])
balance.insert(2, 150)
print(balance)
PRODUKTION
array('i', [300,200,150,100])
Slette
Med denne handling kan du slette รฉt element fra et array efter vรฆrdi. Denne metode accepterer kun รฉt argument, vรฆrdi. Efter at have kรธrt denne metode, omarrangeres matrixelementerne, og indekserne tildeles igen.
Syntaks
arrayName.remove(value)
Eksempel:
Lad os fjerne vรฆrdien af โโ150 fra arrayet. I รธjeblikket har vores balancearray fire elementer 300, 200, 150 og 100. Sรฅ for at fjerne 150 fra arrayet skal vi kun skrive 150 inde i metodeargumentet. Simpelt, ikke?
import array
balance = array.array('i', [300,200,100])
balance.insert(2, 150)
print(balance)
balance.remove(150)
For nu at kontrollere, om vรฆrdien er blevet slettet, skal du indtaste array-navnet og trykke pรฅ Enter pรฅ tastaturet:
import array
balance = array.array('i', [300,200,100])
balance.insert(2, 150)
print(balance)
balance.remove(150)
print(balance)
PRODUKTION
array('i', [300,200,100])
SรG
Med denne handling kan du sรธge efter et element i et array baseret pรฅ dets vรฆrdi. Denne metode accepterer kun รฉt argument, vรฆrdi. Dette er en ikke-destruktiv metode, hvilket betyder, at den ikke pรฅvirker array-vรฆrdierne.
Syntaks
arrayName.index(value)
Eksempel:
Lad os sรธge efter vรฆrdien af โโ150 i arrayet. I รธjeblikket har vores balancearray fire elementer 300, 200, 150 og 100. Sรฅ for at sรธge 150 i arrayet skal vi kun skrive 150 inde i metodeargumentet. Det er ret nemt. Denne metode returnerer indekset for den sรธgte vรฆrdi.
import array
balance = array.array('i', [300,200,150,100])
print(balance.index(150))
PRODUKTION
2
OPDATER
Denne operation er ret lig indsรฆttelsesmetoden, bortset fra at den erstatter den eksisterende vรฆrdi ved det givne indeks. Dette betyder blot at tildele en ny vรฆrdi ved det givne indeks. Denne metode forventer to argumenter indeks og vรฆrdi.
Syntaks
arrayName.udpate(index, value)
Eksempel:
Antag, at vores array har fire elementer 300, 200, 150 og 100, og vi รธnsker at erstatte 150 med 145. Sรฅ hvad er indekset 150?
Tak, hvis du sagde 2.
For at erstatte 150, der har indeks 2, skal du referere til indeks 2 ved at bruge en simpel tildelingsoperator, som denne:
import array
balance = array.array('i', [300,200,150,100])
balance[2] = 145
For nu at kontrollere, om vรฆrdien er blevet opdateret, skal du indtaste array-navnet og trykke pรฅ Enter pรฅ tastaturet:
import array
balance = array.array('i', [300,200,150,100])
balance[2] = 145
print(balance)
PRODUKTION
array('i', [300,200,145,100])
Traverse
Du kan krydse et python-array ved at bruge slรธjfer, som denne:
import array
balance = array.array('i', [300,200,100])
for x in balance:
print(x)
PRODUKTION
300 200 100
Oprettelse af et array i C++
C++ Sprog er mere fleksibel end Python nรฅr det kommer til at skabe arrays. Du kan oprette C++ arrays pรฅ tre mรฅder nรฆvnt forud.
Fรธlgende kode illustrerer, hvordan du kan oprette et heltalsarray i C++ for at gemme kontosaldo:
#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รฅder at erklรฆre et array pรฅ C++
Du kan erklรฆre et array i tre syntaksvarianter. Hvilken passer til dit program; dette valg er baseret pรฅ dine programkrav.
Deklaration efter stรธrrelse
Syntaks
dataType arrayName[arraySize];
Eksempel:
int balance[3];
Kun erklรฆringsinitialisering Array-elementer
Syntaks
dataType arrayName[] = {array, items};
Eksempel:
int balance[] = { 300, 200, 100 };
Erklรฆring efter stรธrrelse og initialiseringsarray-elementer
Syntaks
dataType arrayName[arraySize] = {array, items};
Eksempel:
int balance[3] = { 300, 200, 100 };
Hvordan fรฅr man adgang til en bestemt matrixvรฆrdi?
Du kan fรฅ adgang til ethvert array-element ved at bruge dets indeks.
Syntaks
arrayName[indexNum]
Eksempel:
balance[1]
Det fรธlgende billede illustrerer det grundlรฆggende koncept for at fรฅ adgang til array-elementer ved deres indeks.
Her har vi fรฅet adgang til den anden vรฆrdi af arrayet ved hjรฆlp af dets indeks, som er 1. Outputtet af dette vil vรฆre 200, hvilket grundlรฆggende er den anden vรฆrdi af balance array.
#include <iostream>
using namespace std;
int main()
{
int balance[3] = { 300, 200, 100 };
cout << balance[1];
return 0;
}
Produktion
200
Array Operationer i C++
I modsรฆtning til Pythoni C++ du skal selv programmere logikken til at udfรธre indsรฆttelse, sletning, sรธgeopdatering og gennemlรธbsoperationer pรฅ C++ arrays.
indsatte
Logikken for indsรฆttelsesoperationen gรฅr som fรธlger:
- slรธjfe gennem array-elementerne
- flytte dem til et stรธrre indeks
- tilfรธje et nyt array-element ved et givet indeks
I det fรธlgende eksempel har vi 5 elementer i saldoarrayet, og vi vil tilfรธje en ny post lige efter vรฆrdien 200. Det betyder, at vi skal flytte alle posterne efter 200 til et stรธrre indeks og derefter indsรฆtte vores nye vรฆrdi af 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]);
}
}
Produktion
BEFORE INCREMENT 300 200 100 50 0 AFTERINCREMENT 300 200 150 100 50 0
Array Operationer i Java
Lad os skabe en programmering i Java, heri array-program i Java vi accepterer stรธrrelsen og vรฆrdien af โโarray-elementerne fra brugeren.
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]+" ");
}
}
}
Produktion:-
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
Rediger element i array:-
Opdater et element ved det givne indeks.
Program i Java for, hvordan man รฆndrer elementer i et 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]+" ");
}
}
}
Produktion:-
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
Adgangselement i Array:-
Udskriv alle array-elementer.
Program i Java for, hvordan man krydser i 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]+" ");
}
}
}
Produktion:-
Array Elements are:- 1 2 3 4 5
Resumรฉ
- Et array er en datastruktur til lagring af flere dataelementer, der har en lignende datatype
- Identifikator, datatype, matrixlรฆngde, elementer og indeks er hoveddelene af en matrix
- Brug indekset til at behandle vรฆrdierne af array-elementer
- Arrays har fremragende stรธtte til at holde datatypen intakt
- Pรฅ de fleste sprog oprettes et array ved at angive en identifikator, datatype og elementer, der skal inkluderes
- Arrays er bedst til at behandle et stort antal vรฆrdier og til hurtig sortering og sรธgning
- Python har moduler og indbyggede metoder til at udfรธre grundlรฆggende array-operationer som at indsรฆtte, slette, sรธge, opdatere og gennemlรธbe
- C++ behov for at definere programmer til grundlรฆggende array-operationer som indsรฆttelse, sletning, sรธgeopdatering og traversering
