Sobes.tech
Intern

Da li u Pythonu koristiš niz ili povezanu listu?

sobes.tech АИ

Одговор од АИ

U PHP-u se za ove svrhe najčešće koristi tip podataka array.

Nizovi u PHP-u mogu biti i sortirani (sa numeričkim indeksiranim ključevima) i asocijativni (sa string ključevima).

Primeri:

<?php
// Indeksirani niz (slično listi ili nizu u drugim jezicima)
$indexedArray = [1, 2, 3, 'četiri'];

// Asocijativni niz (slično rečniku ili hash tabeli)
$associativeArray = [
    'ime' => 'Ivan',
    'starost' => 30,
    'grad' => 'Moskva'
];
?>

U PHP-u ne postoji ugrađeni tip podataka "povezana lista" kao takav. Za simulaciju njegovog ponašanja mogu se koristiti nizovi, ali to neće biti prava implementacija povezane liste sa svojstvima performansi pri umetanju/brisanju u sredini.

Za rad sa kolekcijama objekata koje se mogu ponašati kao povezane liste ili redovi, može se koristiti SPL (Standard PHP Library), na primer SplDoublyLinkedList:

<?php
// Korišćenje `SplDoublyLinkedList` za simulaciju povezane liste
$linkedList = new SplDoublyLinkedList();
$linkedList->push('element 1'); // Dodaje na kraj
$linkedList->unshift('element 0'); // Dodaje na početak

// Pomicanje pokazivača za prolazak
$linkedList->rewind();
while ($linkedList->valid()) {
    echo $linkedList->current() . "\n";
    $linkedList->next();
}
?>

Međutim, u većini svakodnevnih zadataka u PHP-u za skladištenje kolekcija podataka koristi se uglavnom tip array.