Sobes.tech
Junior — Middle

Mi a közepéről történő elem törlésének időbeli komplexitása egy szótárban?

sobes.tech MI

Válasz az MI-től

Swiftben a szótár (Dictionary) egy hash-táblán alapul. Egy elem törlése kulcs szerint átlagosan O(1) időkomplexitással rendelkezik, vagyis állandó idő alatt végrehajtható. Ez abból adódik, hogy a szótár közvetlenül a hash-függvény segítségével számítja ki az elem indexét.

Azonban a legrosszabb esetben, hash ütközések esetén, a komplexitás növekedhet O(n)-re, ahol n a szótárban lévő elemek száma. De a gyakorlatban ilyen esetek ritkák.

Fontos: a szótárban nincs "közép" fogalom, mint egy tömbben, mivel az elemek nem rendezettek. A törlés kulcs szerint történik, nem pozíció szerint.