АНАГРАММА — (от греч. ana — пере + gramma — буква) — слово, словосочетание, бессмысленная комбинация букв, образованные перестановкой букв, составляющих др. слово, напр. хрестоматийное ляхопигисо. Задачи по разгадыванию А. используются в экспериментальных исследованиях мышления, мотивации, речевых способностей и в психодиагностических тестах.
Уважаемый, поспорьте лучше с составителями Большого психологического словаря.
АНАГРАММА — (от греч. ana — пере + gramma — буква) — слово, словосочетание, бессмысленная комбинация букв, образованные перестановкой букв, составляющих др. слово, напр. хрестоматийное ляхопигисо. Задачи по разгадыванию А. используются в экспериментальных исследованиях мышления, мотивации, речевых способностей и в психодиагностических тестах.
Да, согласен, техническое обслуживание таких кубических систем — серьезная проблема.
Но, с другой стороны, в трёх координатах можно строить не только кубы, а и более разряженные, полые конструкции.
Отдельно признателен Вам за конструктивный обмен мнениями и критику!
Поскольку функции были вырваны мной из общего кода, то потащили за собой и лишние внутренности. Впредь буду стараться стерилизовать исходники перед публикацией.
По пунктам.
1. Поправить формат выдачи функции GetWordAnagramm.
2. Нет. Ему нужно понимать DOM.
3. Этот код более 2 лет исправно функционирует в рабочей системе и прошёл тестирование на >10к примеров. Может я и не прав, но зачем что-то менять в том, что исправно работает?
4. Добавить соответствующий параметр к обеим функциям и передавать его в те библиотечные функции, которые того требуют.
5. Не знал, что SOLID-принципы применимы к «плоским» функциям.
6. Вполне возможно, что кому-нибудь пригодится. Встроить в проект, доработать никакого труда не составляет… Ну, а если никому не нужно, то и хрен с ним. :)
Ну, да. Только у меня добавлена очень важная на практике проверка качества перемешивания букв посредством функции Левенштейна, дабы отсекать те случайные перемешивания, которые возвращают ту же последовательность букв, что и в исходном слове и даже те, в которых переставлены одна буква (или более — для длинных слов).
Т.е., таких «слабых» анаграмм не получится:
Слон -> лсон
Рубль -> рубьл
Очень сомнительное утверждение. Очень!
Я свой код никому не навязываю. Я им делюсь и утверждаю, что он рабочий и выполняет заявленную задачу (для этого и дал ссылку на свой оттестированный большой проект).
Искренне не понимаю, что в выложенном коде можно не понять. :)))
И таки да, код несовершенен, т.к. в нём оценивается качество перемешивания букв анаграммы слов, читаемых традиционно слева-направо. Имеет смысл добавить такую же оценку, если читать справа-налево, чтобы исключить, к примеру анаграмму «бирг» для слова «гриб».
Вы смеётесь?! Из-за двух микроскопических функций делать библиотеку и посылать пользователей в «сады Придонья».
Практическая ценность публикации — готовые функции для решения обозначенной в заголовке статьи задачи. Теоретическая ценность — ноль. Как и у всего программирования как прикладной дисциплины. :)
Хороший вопрос!.. И существенный минус конструкции.
Проводимость шины от выхода из строя одной или нескольких плат пострадать не должна, но ремонт, в связи со сложностью разборки конструкции, очевидно, усложнится.
psychology.academic.ru/6333/%D0%90%D0%9D%D0%90%D0%93%D0%A0%D0%90%D0%9C%D0%9C%D0%90
Но, с другой стороны, в трёх координатах можно строить не только кубы, а и более разряженные, полые конструкции.
Поскольку функции были вырваны мной из общего кода, то потащили за собой и лишние внутренности. Впредь буду стараться стерилизовать исходники перед публикацией.
1. Поправить формат выдачи функции GetWordAnagramm.
2. Нет. Ему нужно понимать DOM.
3. Этот код более 2 лет исправно функционирует в рабочей системе и прошёл тестирование на >10к примеров. Может я и не прав, но зачем что-то менять в том, что исправно работает?
4. Добавить соответствующий параметр к обеим функциям и передавать его в те библиотечные функции, которые того требуют.
5. Не знал, что SOLID-принципы применимы к «плоским» функциям.
6. Вполне возможно, что кому-нибудь пригодится. Встроить в проект, доработать никакого труда не составляет… Ну, а если никому не нужно, то и хрен с ним. :)
Спасибо за отзыв!
Отчасти согласен. Ориентировался на более широкую трактовку семантики этого понятия. Так же как и ряд он-лайн сервисов анаграмм.
Да, спасибо, я в курсе. Но и для моей задачи вполне пригодилась.
Вот теперь сижу и думаю: может я чего нарушил, применив её непрофильно. :)
Т.е., таких «слабых» анаграмм не получится:
Слон -> лсон
Рубль -> рубьл
говнокомментарий!Очень сомнительное утверждение. Очень!
Я свой код никому не навязываю. Я им делюсь и утверждаю, что он рабочий и выполняет заявленную задачу (для этого и дал ссылку на свой оттестированный большой проект).
Искренне не понимаю, что в выложенном коде можно не понять. :)))
И таки да, код несовершенен, т.к. в нём оценивается качество перемешивания букв анаграммы слов, читаемых традиционно слева-направо. Имеет смысл добавить такую же оценку, если читать справа-налево, чтобы исключить, к примеру анаграмму «бирг» для слова «гриб».
Практическая ценность публикации — готовые функции для решения обозначенной в заголовке статьи задачи. Теоретическая ценность — ноль. Как и у всего программирования как прикладной дисциплины. :)
Тем и не подошло, что не даёт возможности оценить качество перемешивания букв. :)
Проводимость шины от выхода из строя одной или нескольких плат пострадать не должна, но ремонт, в связи со сложностью разборки конструкции, очевидно, усложнится.