[ Skip to the content ]

Institute of Formal and Applied Linguistics Wiki


[ Back to the navigation ]

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision Both sides next revision
treex:api [2015/12/11 10:15]
popel
treex:api [2015/12/13 13:55]
popel
Line 63: Line 63:
 add_aligned_node add_aligned_node
 update_aligned_nodes update_aligned_nodes
- + 
 +===== Poznámky ===== 
 + 
 +  * Současné ''get_children'' i ''get_descendants'' vrací pole, které se ale musí vždy znovu alokovat (je tedy mutable, ale změny tohoto pole neovlivní původní strom). To je z hlediska rychlosti neoptimální, lepší by bylo vracet iterátor, jak je Javě (collection) a Pythonu zvykem. 
 +  * Pokud někdo bude to pole potřebovat (třeba proto, že chce strom měnit, ale toto pole má zůstat neměnné), tak to lze vždy snadno zařídit (v Pythonu ''list(node.children)''). Výhodou Javy a Pythonu (oproti Perlu) je, že jde iterovat for cyklem i přes collection/iterátor (a v Pythonu je ještě efektivnější list comprehension, protože to jede celé rychlostí céčkového kódu). 
 +  * Další výhodou iterátorů je, že někdy nepotřebuji ani projít všechny prvky toho pole, ale hledám první prvek, který splní nějakou podmínku (short circuit). 
        

[ Back to the navigation ] [ Back to the content ]