Автор | Сообщение |
misha![]()
1275 сообщений |
#4920 2011-10-24 15:42 GMT+3 часа(ов) |
>Спасибо, я знаю. Только к чему ты это сказал?
Не за что) Твой append выходит за рамки функционального подхода |
|
misha![]()
1275 сообщений |
#4921 2011-10-24 15:47 GMT+3 часа(ов) |
V-списки могут стать выходом, тем более что они довольно легко реализуются на схеме.
|
|
joba
157 сообщений |
#4922 2011-10-24 15:50 GMT+3 часа(ов) |
>Не за что) Твой append выходит за рамки функционального подхода
Спасибо, я знаю. Я же просто переписал scheme_append c Си на схему, чтобы наглядно показать как этот встроенный append работает. |
|
misha![]()
1275 сообщений |
#4923 2011-10-24 15:55 GMT+3 часа(ов) |
>Спасибо, я знаю. Я же просто переписал scheme_append c Си на схему, чтобы наглядно показать как этот встроенный append работает.
Не за что) И что дальше? ![]() |
|
joba
157 сообщений |
#4924 2011-10-24 15:59 GMT+3 часа(ов) |
>И что дальше?
Ну т.е. я не имел в виду, что надо использовать мой append2, он был здесь приведен просто для пояснения. Использовать нужно обычный append, или, если писать свой, то через хвостовые cons'ы. |
|
joba
157 сообщений |
#4925 2011-10-24 16:12 GMT+3 часа(ов) |
>Создай структуру ArrayList, состоящую из массива и указателя(счетчик) на его фиктивный конец.
А, ну так это уже не совсем массив будет. |
|
joba
157 сообщений |
#4926 2011-10-24 16:21 GMT+3 часа(ов) |
Лучше, кстати, создать структуру, состоящую из списка и указателя на его последнюю ячейку. Тогда добавление будет работать еще даже быстрее, чем mappend!.
|
|
misha![]()
1275 сообщений |
#4927 2011-10-24 16:32 GMT+3 часа(ов) |
Конечно, если требуется часто добавлять элементы в конец списка, то лучше использовать список и последнюю ячейку. Но если необходим также и быстрый доступ к элементу списка по его индексу, то лучше массив.
|
|
Kergan
300 сообщений |
#4930 2011-10-25 10:01 GMT+3 часа(ов) |
Цитата Да нет, просто компилятор и JIT учитывают является ли ф-я нативной, свободной от сайд-эффектов и т.п., вот видимо здесь это и работает. Вполне возможно, что (fold-right cons ...) разворачивается в длииииинную лапшу из заинлайненных ф-й, в которой потом просто инструкции перетасовываются для оптимизации. |
|
Kergan
300 сообщений |
#4931 2011-10-25 10:12 GMT+3 часа(ов) |
и кстати:
так что append2 таки шустрее |
|