Домашки
This commit is contained in:
20
homework/05.md
Normal file
20
homework/05.md
Normal file
@ -0,0 +1,20 @@
|
||||
# Домашнее задание №5
|
||||
|
||||
📗 В домашнем задании нужно реализовать функции `Map`, `Filter` и `Reduce`.
|
||||
|
||||
|
||||
|
||||
1. Реализуйте функцию `func Map(data []int, action func(int) int) []int`, которая принимает функцию `action` и срез данных `data`. Функция `Map` должна применить функцию `action` к каждому элементу среза `data` и вернуть новый срез с результатами.
|
||||
|
||||
2. Реализуйте функцию `func Filter(data []int, action func(int) bool) []int`, которая принимает функцию `action` и срез данных `data`. Функция `Filter` должна вернуть новый срез, содержащий только те элементы `data`, для которых функция `action` возвращает `true`.
|
||||
|
||||
3. Реализуйте функцию `func Reduce(data []int, initial int, action func(int, int) int) int`, которая принимает функцию `action` (функцию двух аргументов), срез данных `data` и начальное значение `initial`. Функция `Reduce` должна применить функцию `action` к каждому элементу `data` и начальному значению `initial`, накапливая результат.
|
||||
|
||||
|
||||
|
||||
📌 Для выполнения домашнего задания подготовлен шаблон кода и основные тесты, которую помогут проверить корректность реализации конвертации. Шаблона доступен по ссылке.
|
||||
|
||||
|
||||
|
||||
### Задание со звездочкой
|
||||
Выполнять необязательно, но если вы уже знакомы c дженериками в Go, то попробуйте реализовать обобщенные функции Map, Filter и Reduce.
|
||||
Reference in New Issue
Block a user