Sobes.tech
Intern

Používáš v Pythonu pole nebo spojový seznam?

sobes.tech AI

Odpověď od AI

V PHP se pro tyto účely nejčastěji používá datový typ array.

Pole v PHP může být jak seřazené (s číselnými indexovanými klíči), tak asociativní (s řetězcovými klíči).

Příklady:

<?php
// Indexové pole (podobné seznamu nebo poli v jiných jazycích)
$indexedArray = [1, 2, 3, 'čtyři'];

// Asociační pole (podobné slovníku nebo hash tabulce)
$associativeArray = [
    'jméno' => 'Ivan',
    'věk' => 30,
    'město' => 'Moskva'
];
?>

V PHP neexistuje vestavěný typ "spojený seznam" jako takový. Pro simulaci jeho chování lze použít pole, ale nebude to skutečná implementace spojovaného seznamu s jeho vlastnostmi výkonu při vkládání/mazání uprostřed.

Pro práci se sbírkami objektů, které se mohou chovat jako spojované seznamy nebo fronty, lze použít SPL (Standard PHP Library), například SplDoublyLinkedList:

<?php
// Použití `SplDoublyLinkedList` k simulaci spojovaného seznamu
$linkedList = new SplDoublyLinkedList();
$linkedList->push('prvek 1'); // Přidá na konec
$linkedList->unshift('prvek 0'); // Přidá na začátek

// Posun ukazatele pro průchod
$linkedList->rewind();
while ($linkedList->valid()) {
    echo $linkedList->current() . "\n";
    $linkedList->next();
}
?>

Nicméně, ve většině každodenních úkolů v PHP se pro ukládání kolekcí dat používá především typ array.