Сообщество Хекслета
Решил, но учительское решение мне нравится больше, т.к. там с ходу можно понять какие действия выполнены. И при модификации (например, если понадобится чтобы количество строк утраивалось) его легче читать и реализовать. В принципе свой код то я тоже пойму скорее всего, но если через год показать, то придется попыхтеть... Сейчас попробую переписать свой, чтобы было яснее.
const select = (tag,list) => {
const iter = (items,acc) => {
if( isEmpty(items) ) return acc;
const current = head(items);
const rest = tail(items);
if(!hasChildren(current)){
const newAcc= is(tag,current) ? consList(tag,acc): acc;
return iter(rest,newAcc);
}
else {
return iter(rest,iter(children(current),acc));
}
}
return iter(list,l());
}
Здравствуйте,в чем прокол в моем коде?Пытаюсь сам с нуля реализовать,но тесты не проходит, число меньше чем надо показывает :)
Прошу,если в силах,объясните что не так.
Вот такое решение норм? Вроде бы по смыслу то же самое, что и в учительском решении, но мне проще было вынести .join, чтобы не путаться.
Sergei Melodyn 07 марта 2018 →
Отличная задача для for, но не foreach, имхо.
Кстати, почему sizeof, а не count?
Решил, используя filter, про slice вообще забыл. Но честно говоря даже не знал как им пользоваться до этого. Благодаря учительскому решению изучил slice =)
Михаил Чудинов 07 марта 2018 →
Что то я застрял на этом курсе. Меня беспокоит, действительно ли оптимально изучать эти знания именно сейчас. Я только начал изучать java, прошел курс 101. Хочется побыстрее освоить необходимый минимум чтоб начать писать что то полезное, за что платят деньги, а потом уже можно совершенствовать навыки и лазить в недра jvm. Курс по байткоду выглядит для меня сейчас пусть и интересным, но шагом в такую глубь, которая мне еще долго не понадобится в решении практических задач. Кажется более логичным изучить вначале структуры данных, взаимодействие с БД, протокол http и то как на java делать веб приложения. И тут вроде уже можно и найти какую то работу и начать зарабатывать деньги. Деньги для меня - это мотивация и возможность продолжать программирование, и перестать отвлекаться на другую деятельность по добыванию денег.
Вобщем думаю я пока этот курс пропустить и пойти дальше по курсам "Профессия Java-программист".
Если это ужасное решение, в разрезе моей цели как можно быстрее освоить минимум java программирования чтоб заработать первых денег на нем, то прошу меня переубедить.
Sergei Melodyn 07 марта 2018 →
Разве модификация исходного массива - правильный путь? Мне казалось, что предпочтение отдаётся функция, возвращающим новый массив/строку/иное.
JS: DOM API
→
UI как конечный автомат
(архив)
Веб-доступ не работает
Андрей Маргиев 07 марта 2018 →
Никак не могу понять суть задания. Я думал, что нужно просто вывести все числа в двух диапазонах.
['1->3', '5->7'] даст [1,2,3,5,6,7]
Не понимаю, откуда берутся другие числа в результирующем наборе.
Валентина Чемякина 07 марта 2018 →
У меня этот курс сопровождается постоянным чувством стыда, из-за того что решения приходят в основном после просмотра вопросов и ответов))) Ну хоть общая направленность мыслей и логики правильная) Вроде почти как у учителя получилось https://ru.hexlet.io/code_reviews/40127