Articles

GeeksforGeeks

pole je soubor položek uložených na sousedních paměťových místech. Cílem je uložit více položek stejného typu dohromady. To usnadňuje výpočet polohy každého prvku jednoduchým přidáním offsetu k základní hodnotě, tj. umístění paměti prvního prvku pole(obecně označeného názvem pole). Základní hodnota je index 0 a rozdíl mezi těmito dvěma indexy je offset.

pro jednoduchost si můžeme představit pole jako flotilu schodů, kde je na každém kroku umístěna hodnota (řekněme jeden z vašich přátel). Tady, můžete určit polohu některého z vašich přátel jednoduše tím, že znáte počet kroků, na kterých jsou.
Nezapomeňte: „umístění dalšího indexu závisí na datovém typu, který používáme“.

pole

na výše uvedený obrázek lze pohlížet jako na pohled na nejvyšší úroveň schodiště, kde se nacházíte na základně schodiště. Každý prvek může být jednoznačně identifikován svým indexem v poli (podobným způsobem, jako byste mohli identifikovat své přátele podle kroku, na kterém byli ve výše uvedeném příkladu).

velikost pole

v jazykovém poli C má pevnou velikost, což znamená, že jakmile je velikost dána, nelze ji změnit, tj. nemůžete ji zmenšit ani ji rozbalit. Důvodem bylo, že pro rozšíření, pokud změníme velikost, si nemůžeme být jisti (není to možné pokaždé), že dostaneme další umístění paměti jako volné. Zmenšení nebude fungovat, protože pole, když je deklarováno, získá paměť staticky, a kompilátor je tedy jediný, kdo ji zničí.

Typy indexování v poli:

  • 0 (nulovým základem indexování): první prvek pole je indexována podle index 0
  • 1 (jeden založené na indexování): první prvek pole je indexována podle index 1
  • n (n založené na indexování): základní index pole mohou být libovolně zvolena. Programovací jazyky umožňující indexování založené na n obvykle také umožňují záporné hodnoty indexu a jiné skalární datové typy, jako jsou výčty nebo znaky, mohou být použity jako index pole.

Výhody použití pole:

  • Pole umožňují náhodný přístup k prvkům. Díky tomu je přístup k prvkům podle polohy rychlejší.
  • pole mají lepší umístění mezipaměti, které může mít docela velký rozdíl ve výkonu.pole
  • představují více datových položek stejného typu pomocí jediného názvu.

nevýhody použití polí:
nemůžete změnit velikost, tj. jakmile jste deklarovali pole nemůžete měnit jeho velikost, protože statické paměti přidělené k němu. Zde je vkládání a mazání obtížné, protože prvky jsou uloženy v po sobě jdoucích paměťových místech a operace řazení je také nákladná.
nyní, když si příklad implementace datové struktury zásobníku pomocí pole tam jsou některé zjevné chyby.

Vezměme si operaci POP zásobníku. Algoritmus by šel něco takového.

  1. Zkontrolujte, zda na zásobníku podtečení
  2. Snížení vrcholu 1

Takže to, co děláme, je, že ukazatel na nejvyšší prvek je snižovat význam jsme jen vymezovací našeho názoru ve skutečnosti, že prvek zůstane tam mluví z paměti, pokud máte nějaké primitivní datový typ, pak by to mohlo být ok, ale objekt pole bude trvat hodně paměti.

příklady –

// A character array in C/C++/Javachar arr1 = {'g', 'e', 'e', 'k', 's'};// An Integer array in C/C++/Javaint arr2 = {10, 20, 30, 40, 50};// Item at i'th index in array is typically accessed// as "arr". For example arr1 gives us 'g'// and arr2 gives us 40.

obvykle se pole znaků nazývá „řetězec“, zatímco pole ints nebo plováků se nazývá jednoduše pole.

aplikace na poli

  1. pole ukládá datové prvky stejného datového typu.pole
  2. lze použít pro plánování CPU.
  3. Používá se k implementaci dalších datových struktur, jako jsou stohy, fronty, hromady, hašovací tabulky atd.

Pokud se vám líbí GeeksforGeeks a chtěli byste přispět, můžete také napsat článek pomocí contribute.geeksforgeeks.org nebo napište svůj článek na [email protected]. Viz váš článek se objeví na GeeksforGeeks hlavní stránce a pomoci jiných Mágů.