1. Да се реализира вариант на функцията map за матрици
  2. Да се реализира вариант на функцията foldr за матрици, която позволява прилагането на две различни операции: едната над елементите в даден ред и другата — над резултатите от свиването на редовете. Пример: (foldr-m + 0 * 1 m) да намира сумата от произведението на елементите във всеки ред
  3. Да се реализира функция, която намира подматрица на дадена матрица със зададени горен ляв и долен десен ъгъл
  4. Да се реализира функция, която намира детерминантна на квадратна матрица
  5. Да се добавят липсващите аритметични операции за рационални числа
  6. Да се добавят всички операции за рационални числа в представянето чрез капсулация с отворена рекурсия
  7. Да се реализира функция, която намира най-краткия път между произволни два възела в двоично дърво
  8. Да се реализира вариант на функцията map за двоични дървета
  9. Да се реализира вариант на функцията foldr за двоични дървета
  10. Да се реализира функция, която в асоциативен списък изчиства дублирани ключове, като запазва само първата стойност.
  11. Да се реализира функция, която обръща асоциативен списък, като разменя ключовете и стойностите, премахвайки евентуално дублиране на ключове в новополучения асоциативен списък.
  12. Да се реализира функция, която слива два асоциативни списъка, като за общите ключове прилага двуместна операция подадена като аргумент
  13. Да се реализира функция, която композира два асоциативни списъка с целочислени ключове и стойности, разглеждайки ги като функции. Пример: (compose '((1 . 2) (2 . 3) (3 . 4)) ((2 . 20) (4 . 40) (6 . 60))) да връща ((1 . 20) (3 . 40))
  14. Да се реализира функция, която брои циклите с дължина 3 в даден граф.
  15. Да се реализира функция, която намира списък с братята на даден възел в даден граф.
  16. Да се реализира функция, която намира списък с възлите, които са единствено дете на всичките си родители в даден граф.
Последно модифициране: петък, 8 ноември 2019, 00:59