# Tietorakenteet ja algoritmit - kirjasto

## Operaatioiden lyhenteet:

C:llä ohjelmoitaessa on käytössä myös lyhenteitä eri operaatioille sekä rakenteille. Tätä ominaisuutta ei ole siis Pascal-kielisessä osiossa.

Operaatioista on pitkien (`VOIDPTR_STACK_CREATE()`) versioiden lisäksi myös lyhennetyt versiot (`PS_CREATE()`). Logiikka on se, että `INT` lyhennetään `I`, `FLOAT = F`, `CHARP = C` ja `VOIDPTR = P` (pointer). Yleisiä operaatioita (esim. `LIST_CREATE()`) ei kuitenkaan ole lyhennetty, vaan pelkästään tyypitetyt operaatiot. Koska verkoilla ei ole tyypitettyjä operaatioita, niitä ei ole lyhennetty ollenkaan.

`Tietorakenne` | `Lyhenne`
`LIST` | `L`
`QUEUE` | `Q`
`STACK` | `S`
`DEQUE` | `D`
`TREE` | `T`
`BTREE` | `B`
`DSET` | `DS`
`PRIQUEUE` | `PQ`
`GRAPH` | `G`
`DIGRAPH` | `DG`
`ARRAY` | `A`

Esimerkkejä:

`Operaatio` | `Lyhenne`
`INT_LIST_INSERT` | `IL_INSERT`
`VOIDPTR_QUEUE_CREATE` | `PQ_CREATE`
`FLOAT_STACK_FREE` | `FS_FREE`
`CHARP_DEQUE_ENQUEUE` | `CD_ENQUEUE`
`INT_TREE_CREATE_NODE` | `IT_CREATE_NODE`
`CHARP_BTREE_RETRIEVE` | `CB_RETRIEVE`
`FLOAT_DSET_UNION` | `FDS_UNION`
`VOIDPTR_PRIQUEUE_MIN` | `PPQ_MIN`

Ehkä helpoimmin sekaisin meneviä ovat `VOIDPTR_QUEUE`-operaatiot, PQ-lyhenteen voi helposti sekoittaa prioriteettijonoon `PRIQUEUE`.

Söulissa, 5.9.1999 Matti Meriläinen