Patrz materiały dydaktyczne (asd.pdf). Dodatkowo do tematu 1: Papadimitriou, C. H., Złożoność obliczeniowa, WNT, Warszawa, 2002.
Wypracowanie powinno składać się ze strony tytułowej, wstępu, części głównej, podsumowania oraz wykazu literatury. Powinno być ustrukturowane, tj. podzielone na rozdziały i podrozdziały. W wypracowaniu należy zawrzeć sformułowanie problemu(ów), pseudokody algorytmów rozwiązywania problemów, analizę oraz wyprowadzenia złożoności obliczeniowych (czasowych i pamięciowych, średnich i pesymistycznych) omawianych algorytmów. Do treści zaczerpniętych ze źródeł literaturowych powinny być zamieszczone stosowne odwołania. Należy unikać odwołań do źródeł internetowych, w szczególności do wikipedii, tj. do źródeł o niegwarantowanej jakości.