|
0 / 0 / 0
Регистрация: 23.11.2014
Сообщений: 10
|
|
Описать функцию, удаляющую из списка каждый второй элемент13.12.2016, 20:12. Показов 7187. Ответов 43
Метки нет (Все метки)
0
|
|
| 13.12.2016, 20:12 | |
|
Ответы с готовыми решениями:
43
Описать функцию, удаляющую из списка элементы в определенной последовательности |
| 22.12.2016, 23:31 | |
|
0
|
|
|
Злой няш
2136 / 1505 / 565
Регистрация: 05.04.2010
Сообщений: 2,881
|
|||||
| 22.12.2016, 23:36 | |||||
|
0
|
|||||
|
4576 / 2775 / 491
Регистрация: 28.04.2012
Сообщений: 8,782
|
|
| 22.12.2016, 23:41 | |
|
2
|
|
|
Злой няш
2136 / 1505 / 565
Регистрация: 05.04.2010
Сообщений: 2,881
|
|
| 22.12.2016, 23:42 | |
|
0
|
|
|
Заблокирован
|
||||
| 22.12.2016, 23:43 | ||||
|
http://erlang.org/doc/programm... sions.html имхо, трудно для восприятия непосвященных.
0
|
||||
|
4576 / 2775 / 491
Регистрация: 28.04.2012
Сообщений: 8,782
|
||||
| 22.12.2016, 23:45 | ||||
|
Добавлено через 1 минуту
1
|
||||
|
Злой няш
2136 / 1505 / 565
Регистрация: 05.04.2010
Сообщений: 2,881
|
|||
| 22.12.2016, 23:58 | |||
|
Добавлено через 59 секунд
0
|
|||
|
1195 / 588 / 88
Регистрация: 20.09.2012
Сообщений: 1,881
|
|||||||||
| 23.12.2016, 11:00 | |||||||||
после этого конечно можно было дальше не читать, но я все же поясню. не надо требовать от языка то для чего он не предназначен. f# всегда четко позиционировался как язык для обработки данных и поддержка в VS на уровне позиционирования языка вполне достаточная. а гуевые свистелки-перделки для мышевозов всегда рекомендовали делать на с#. далее. вот в c# нет ADT, от слова совсем, - торжественно объявим его неязыком? а тайппровайдерах в c# даже не мечтают. так что проблема то не в языках а в оценщиках типа JetBrains
на самом деле оверблюд достаточно уникален. если чтото там нет изначально, это не значит, что это не появится в батарейках. там лисп можно встроить не то что какой то List Comprehension https://github.com/cakeplus/pa_comprehension/ Добавлено через 3 часа 10 минут ps хе... ссылку на camlp4 то я и не приметил/ Добавлено через 1 минуту ладно. один черт фешарпный List Comprehension на из окамла растет
0
|
|||||||||
|
Модератор
|
||||||
| 23.12.2016, 22:11 | ||||||
|
Тривиальное решение.
0
|
||||||
|
1195 / 588 / 88
Регистрация: 20.09.2012
Сообщений: 1,881
|
||||||||
| 23.12.2016, 22:20 | ||||||||
1
|
||||||||
|
Модератор
|
|||
| 23.12.2016, 22:28 | |||
|
0
|
|||
| 24.12.2016, 04:28 | |
|
Лесник в эту тему уже заглядывал, сейчас очередь Капитана Очевидности
![]() Сабжевая задача про то, как из списка выделить подсписок по определенному критерию. То есть, говоря в общем, абстракция filter или (чуть отдаленнее) map. Для определенности останемся в рамках иммутабельности и оставим за кадром возможности некоторых функциональных языков деструктивно изменять список при пробежке по нему (set-car | set-cdr или как оно там называется). Из очевидных решений реализации этих функций в рамках библиотеки (а не в ядре самого языка) видится 3 варианта: 1) вышеприведенный рекурсивный без аккумулятора. Сохраняет порядок элементов в списке, в принципе работает на бесконечных списках-потоках (с кучей оговорок на стек, ленивую/строгую семантику, реализацию самих ленивых структур и т.п.), в наивной реализации при строгой семантике жрет стек потому что не хвостовой вызов. 2) вариант с накоплением результата в аккумуляторе. Реверсирует порядок элементов (для половины задач использования списков это вполне допустимо), не работает на бесконечных списках, не жрет стек при наличии ТСО в ядре языка. 3) вариант 2 с последующим реверсом результата - со всеми особенностями варианта 2 плюс вторая пробежка по списку. Я год назад накостылил свой строгий функциональный язык, реализацию интерпретатора. И в стандартную библиотеку мне конечно потребовались и map и filter. Сначала я их реализовал по варианту 1. Но поскольку реализация интерпретатора была на Java, то я ловил стековерфлоу уже на списках порядка нескольких сотен элементов (в Java очень маленький стек выделяемый по умолчанию на поток, его можно увеличить ключами запуска приложения, но все равно кардинально не решает проблему). Потом я реализовал в ядре интерпретатора ТСО и переписал эти библиотечные функции по варианту 3. Стало работать чуть медленнее (за счет финального реверса результата), но стек не переполнялся на любых размерах списков. (Потоковые аналоги этих функций для бесконечных ленивых списков конечно остались в варианте 1). Потом я написал второй эвалюатор интерпретатора (рядом с первым, можно в ГУЕ выставлять флажок каким эвалюатором считать), который был нерекурсивный и использовал собственный навелосипеденный стек (с точки зрения Java размещающийся в куче). Стало раза в полтора медленнее, но никаких стековерфлоу ни на каких задачах от слова ваще! Я бы переписал обратно библиотечные мапы и фильтры на реализации без аккумуляторов, если бы ради фана не оставил возможность юзеру выбирать эвалюатор. Хотя может допустимым решением было бы влепить в библиотеку все 3 версии каждой (!) списковой функции. Но я то (на правах создателя этого безобразия и концепции) знаю чем они отличаются и когда какую надо применять, а объяснить это начинающим имхо было бы нетривиально ![]() Я, собственно, к чему это все. Реализуя подобные функции, по-хорошему стоит знать, в какой семантике абстрактной (или конкретной) виртуальной машины они будут жить и работать А то может и циклами надо писать, как говорит уважаемый pycture, или же покатит и лобовой безаккумуляторный вариант 1, если под капотом хаскель или мой итеративный эвалюатор.ЗЫ однажды на хабре кто-то написал статью про понятие котоморфизма применительно к практике. Но кота (морфирующего) писал на F#, на примере общей функции свертки дерева по любой сверточной функции. Так автор специально вместо наивного рекурсивного решения свертки применил технику то ли трамплинов, то ли еще чего-то (сейчас уже и не помню, но можно найти статью и посмотреть) - для того, чтобы перенести вычисления со стека в кучу и избежать стековерфлоу. А вы говорите язык для обработки данных и суровой правды реальной жизни вместо фантазийноролевых игр Но это я шучу, я вроде не настолько идиот
1
|
|
|
Модератор
|
|||||||||||
| 24.12.2016, 09:33 | |||||||||||
|
Хвостовой без реверса результата
Добавлено через 9 минут Aха, вот как.
0
|
|||||||||||
|
Заблокирован
|
|
| 24.12.2016, 12:38 | |
|
KolodeznyDiver,
@ <- очень дорогостоящая операция
1
|
|
|
1195 / 588 / 88
Регистрация: 20.09.2012
Сообщений: 1,881
|
|||||||
| 24.12.2016, 16:58 | |||||||
|
https://en.wikibooks.org/wiki/... sing_Style (+монады) хотя там и не так заметно. выглядеть будет грубо так
1
|
|||||||
|
Модератор
|
|||||||||||
| 24.12.2016, 19:50 | |||||||||||
|
pycture, axa, а потом
0
|
|||||||||||
|
1195 / 588 / 88
Регистрация: 20.09.2012
Сообщений: 1,881
|
|
| 24.12.2016, 20:00 | |
|
0
|
|
| 24.12.2016, 20:20 | |
|
Ага, типа нагребатор цепочки отложенных вычислений в куче из-за строгой семантики... https://habrahabr.ru/post/57503/
0
|
|
|
Модератор
|
||
| 24.12.2016, 21:54 | ||
|
Добавлено через 1 час 1 минуту Не по теме: ... аха. Ну иак и есть. Вроде, разобрался.
0
|
||
| 24.12.2016, 21:54 | |
|
Удалить из списка каждый второй элемент Удалить каждый второй элемент из списка
Из заданного списка удалить каждый второй элемент Из созданного списка удалить каждый второй элемент Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F
Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU.
Опрашиваются регистры. . .
|
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка:
Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
|
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо
Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
|