Sobes.tech
Junior

Kādas ir datu struktūras?

sobes.tech AI

Atbilde no AI

Masīvi, saraksti, steki, rindas, koki, grafi, hash tabulas.

Masīvs: Viena tipa elementu kolekcija, glabāta blakus esošās atmiņas šūnās. Pieejama pēc indeksa.

Saraksts: Sekvencāla elementu kolekcija. Var būt vienkāršs vai dubultā saistīts. Pievienošana/noņemšana vidū ir efektīvāka nekā masīvā.

Steks: LIFO (Last-In, First-Out) struktūra. Operācijas: push (pievienot), pop (noņemt no gala), peek (skatīties uz augšējo elementu).

Rinda: FIFO (First-In, First-Out) struktūra. Operācijas: enqueue (pievienot galā), dequeue (noņemt sākumā), peek (skatīties uz pirmo elementu).

Koki: Hierarhiska datu struktūra. Sakne, mezgli, pēcnācēji. Piemērs: binārs meklēšanas koks.

Grafi: Vērtu kopums (mezgli), savienots ar malām. Var būt virzīts vai nevirzīts, sverots vai nesverots.

Hash tabula: Pāru kolekcija, kurā ir atslēga un vērtība. Izmanto hash funkciju ātrai piekļuvei (vidēji). Var būt kolīzijas.

Piemēri iOS izmantošanai:

  • Masīvi: Array
  • Saraksti: nav iebūvētas klases, realizētas uz masīvu vai pielāgotu struktūru bāzes
  • Steki/rindas: realizētas uz masīvu vai sarakstu bāzes
  • Koki: izmanto frameworkos, piemēram, UI (skata hierarhija)
  • Grafi: saistību attēlošanai, piemēram, tīklos
  • Hash tabulas: Dictionary, Set
// Masīva piemērs
let numbers = [1, 2, 3, 4, 5]
print(numbers[0]) // Pieejamība pēc indeksa

// Vārdu krājuma piemērs (hash tabula)
let grades = ["Alice": 95, "Bob": 88]
print(grades["Alice"] ?? 0) // Pieejamība pēc atslēgas