Introduktion till Arrays in Data Structure

Array är en typ av datastruktur som används för att lagra homogen data på sammanhängande minnesplatser. Detta implementerar idén att lagra de olika artiklarna så att de kan hämtas eller nås på en gång.

Här refererar index till platsen för ett element i matrisen. Låt oss föreställa oss om P (L) är namnet på matrisen där 'P' är variabelnamnet och 'L' är längden på matrisen, dvs. antalet element som finns i matrisen. Sedan representerar P (i) elementet vid den 'i + 1' positionen i matrisen.

Till exempel:

P (6) = 72 betyder element på 6 + 1: e plats för matrisen.

Need of Array: Det hjälper till att representera ett stort antal element med en enda variabel. Det gör det också lättare att lagra tillgång till element i minnesplatsen med hjälp av indexet för matrisen som representerar platsen för elementet i arrayen.

Hur Arrays fungerar i datastruktur?

Array lagrar variablerna på sammanhängande platser och ger dem ett visst index. När någon vill hämta uppgifterna använder personen detta index. I den ovan givna matrisen 'P', säg basadress för array = 100, då lagras element enligt nedan:


Minne tilldelat till en matris kan beräknas som:

  • En dimensionell array: Totalt minne tilldelat en array = Antal element * storlek på ett element. Till exempel: I ovanstående fall, minne = 7 * (storlek på int)
  • Rad Major Order: Totalt minne tilldelat 2D Array = Antal element * storlek på ett element
    = Antal rader * Antal kolumner * Storleken på ett element
  • Kolumn Major Order: Totalt minne tilldelat 2D Array = Antal element * storlek på ett element
    = Antal rader * Antal kolumner * Storleken på ett element

Hur definierar man matriser?

Således kan Array definieras som en härledd datastruktur för att lagra homogena data av primitiv datatyp på sammanhängande minnesplatser. Nedan visas de operationer som kan utföras på matriser:

1. Insättning: Detta hänvisar till att infoga ett element i matrisen vid ett visst index. Detta kan utföras med O (n) komplexitet.

2. Radering: Detta avser att ta bort ett objekt vid ett visst index. Denna operation kräver förskjutning av element efter borttagning och tar således O (n) komplexitet.

3. Sökning: Det här refererar till att få åtkomst till ett objekt i ett visst index i en matris.

4. Traversing: Det hänvisar till att skriva ut alla element i en matris efter varandra.

Egenskaper för matriser i datastruktur

Nedan visas egenskaperna för matriser i Datastruktur:

  • Det är en härledd datatyp, som består av en samling av olika primitiva datatyper som int, char, float, etc.
  • Delar av en matris lagras i sammanhängande block i primärminnet.
  • Arrayens namn lagrar matrisens basadress. Det fungerar som en pekare till minnesblocket där det första elementet har lagrats.
  • Arrayindex börjar från 0 till N-1 i fallet med en enhetsdimension där n representerar antalet element i en matris.
  • Element i matrisen kan endast bestå av konstanter och bokstavliga värden.

Hur man skapar matriser?

Vi kan skapa Arrays med hjälp av syntaxen nedan:

1. Dimensionell matris: var = (c1, c2, c3, …… .cn)

Här hänvisar var till variabeln till array som lagrar matrisens basplats. Och c1, c2 … är delar av matrisen.

Exempel: int a = (4, 6, 7, 8, 9)

Arrayens längd = n

2. Multidimensionell matris: var = ((r 01, … r 0n ), (r 10, … ..r 1n ) … .. (r m0 … .r mn ))

Här hänvisar var till namnet på matrisen med m rader och n kolumner.

Hur får man tillgång till Arrays Element?

Index för en matris börjar från 0 till -1, 0 som indikerar det första elementet i matrisen och -1 indikerar det sista elementet i matrisen. På liknande sätt indikerar -2 det sista men ett element i matrisen. Låt oss säga att det finns en grupp A som har 10 element. Sedan lagrar en variabel referensen till den första variabeln i arrayen och detta kallas "Base Address" för en matris. Efter detta, om någon vill komma åt elementet i matrisen beräknas adressen för det elementet med hjälp av formeln nedan.

Adress för ith-element = Basadress + i * storlek för varje element

Här hänvisar storleken på varje element till minnet som tas av olika primitiva datatyper som matrisen har. Till exempel tar int 2 byte utrymme och float tar 4 byte utrymme i C.

Få åtkomst till flerdimensionell matris

Låt oss säga A (r l, … … .., r u ) (c u, … …, c l ) är en flerdimensionell matris och rl, r u, c u, c l är nedre och övre gränser för rader och kolumner. Än antalet rader i A, säg NR = r u - r l +1 och Antal kolumner i A, säg NC = c l - c u +1.

För att hitta adressen till ett element i matrisen finns det två metoder:

  1. Rad major: Där vi korsar rad för rad.

Adress till A (i) (j) = Basadress + ((i - r l ) * NC + (j- c l )) * storlek på varje element.

  1. Kolumn Major: Där vi korsar kolumn efter kolumn.

Adress till A (i) (j) = Basadress + ((i - r l ) + (j- c l ) * NR) * storlek på varje element.

Komplexitet: Att få tillgång till alla element i array är mycket enklare och kan göras i O (1) -komplexitet.

Slutsats

Matriser är ett mycket unikt sätt att strukturera lagrade data så att de lätt kan nås och kan frågas för att hämta värdet på ett visst nummer med hjälp av indexvärdet. Även om att sätta in ett element i en matris tar mycket tid eftersom det behöver fullständig omarrangemang och förskjutning av befintliga element i en matris. Det används fortfarande för att implementera olika andra komplexa datastrukturer såsom träd, kö eller stapel och används också i olika algoritmer.

Rekommenderad artikel

Detta är en guide till Arrays i datastruktur. Här diskuterar vi hur du skapar och får åtkomst till Array Elements i Datastruktur tillsammans med Properties. Du kan också gå igenom våra andra relaterade artiklar för att lära dig mer -

  1. Hur man skapar matriser i PHP?
  2. Matriser i Java-programmering Fördelar och nackdelar
  3. Arrays in C-programmering (exempel)
  4. Topp 10 intervjuer för datastruktur

Kategori: