Loopless algoritmus - Loopless algorithm

Ve výpočetní oblasti kombinatorika, a loopless algoritmus nebo loopless imperativní algoritmus je rozkazovací způsob algoritmus který generuje po sobě jdoucí kombinatorické objekty, jako např oddíly, obměny, a kombinace, v konstantní čas a první objekt v lineární čas.[1][2] Objekty musí být okamžitě k dispozici v jednoduché formě, aniž by vyžadovaly další kroky.[1]

A loopless funkční algoritmus je funkční algoritmus, který má podobu neplodný krok • prolog kde krok trvá konstantní čas a prolog trvá lineární čas ve velikosti vstupu.[3][4] Standardní funkce unfoldr je asociativní pravice Pták rozvinout.[3]

Reference

  1. ^ A b Ehrlich, G. (červenec 1973). Msgstr "Loopless algoritmy pro generování permutací, kombinací a jiné kombinatorické konfigurace". Deník ACM. New York, NY: ACM. 20 (3): 500–513. doi:10.1145/321765.321781. ISSN  0004-5411.
  2. ^ Knuth, D. (Únor 2005). Svazek 4, Fascicle 2: Generování všech n-tic a permutací. Umění počítačového programování. Upper Saddle River, N.J.: Addison – Wesley Professional. ISBN  0-201-85393-0.
  3. ^ A b Bird, R. (Červenec 2006). Loopless funkční algoritmy. Mezinárodní konference o matematice konstrukce programů (MPC 06). Heidelberg, Německo: Springer. doi:10.1007/11783596.
  4. ^ Snape, J. (září 2005). Loopless funkční algoritmy. Diplomová práce. Oxford, SPOJENÉ KRÁLOVSTVÍ.: University of Oxford. OCLC  63162239.