Junior — Middle
Co zajišťuje rychlý přístup k prvku pole podle jeho pozice, a proč se taková operace považuje za prováděnou v konstantním čase?
sobes.tech AI
Odpověď od AI
Rychlý přístup k prvku pole podle jeho pozice je zajištěn tím, že pole je implementováno jako souvislý blok paměti, kde jsou prvky uspořádány sekvenčně.
To znamená, že pro přístup k prvku s indexem i je třeba pouze vypočítat adresu:
adresa_začátku_pole + i * velikost_prvku
Po výpočtu adresy lze přímo přistoupit k prvku bez nutnosti projít všechny předchozí prvky.
Proto operace přístupu podle indexu probíhá v konstantním čase — O(1), bez ohledu na velikost pole.
Příklad: v Java nebo Kotlin jsou pole navržena tak, že array[i] je přímý přístup do paměti, nikoliv průchod prvky.