Easyelectronics.ru

Электроника для всех
Текущее время: 02 окт 2020, 00:52

Часовой пояс: UTC + 5 часов



JLCPCB – Прототипы печатных плат за $2/5шт. два слоя. $5/5шт. четыре слоя
Крупнейший производитель печатных плат и прототипов. Более 600000 клиентов и свыше 10000 заказов в день!
Получите скидку на почтовую отправку при первом заказе в JLCPCB!

Начать новую тему Ответить на тему  [ Сообщений: 34 ]  На страницу Пред.  1, 2
Автор Сообщение
 Заголовок сообщения: Re: Ищу прогу поиска слов с перетасовкой бит
СообщениеДобавлено: 17 окт 2018, 10:17 
Старожил
Аватара пользователя

Зарегистрирован: 13 май 2010, 01:32
Сообщения: 1941
Откуда: Из сказки.
Непонятно...
То ли у меня скорость мысли замедлилась то ли у других.
Но по-моему пургу несете.


Я файл предоставить не могу, а для проверки можно и просто в слове: передача -сместить по кольцу все биты в байтах да хоть на 1 влево и все
,вот получится заготовка для проверки.
брейн ринг - фигня какая, делать чтоль нех мне...
Я всегда делом занят но редкое дело мое - не херня, но это уже другая тема.

_________________
vk.cc/arXpXv


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ищу прогу поиска слов с перетасовкой бит
СообщениеДобавлено: 17 окт 2018, 11:36 
Старожил
Аватара пользователя

Зарегистрирован: 06 ноя 2013, 16:07
Сообщения: 711
Откуда: Германия
Специально для selevo: на C++, под Линукс, без комментов, не тестированное.

Show


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ищу прогу поиска слов с перетасовкой бит
СообщениеДобавлено: 17 окт 2018, 14:56 
Старожил

Зарегистрирован: 05 фев 2013, 00:58
Сообщения: 3516
:)


Последний раз редактировалось iev91 19 май 2019, 18:48, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ищу прогу поиска слов с перетасовкой бит
СообщениеДобавлено: 18 окт 2018, 00:23 
Старожил
Аватара пользователя

Зарегистрирован: 13 май 2010, 01:32
Сообщения: 1941
Откуда: Из сказки.
это я просто для примера, код проверить, раз хочет.

dev
мне твой код мозг вынес,я не понял че он делает ?
Вижу только ротации.
В каком месте кода происходит например смена местами битов 0 и 7 ?
Я начал чуять что придется делать самому.

В каких языках есть операция обмена битами (местами поменять)
Все те же 0 и 7

_________________
vk.cc/arXpXv


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ищу прогу поиска слов с перетасовкой бит
СообщениеДобавлено: 18 окт 2018, 00:28 
Старожил

Зарегистрирован: 10 июн 2011, 23:01
Сообщения: 3462
выше я же привел код которые все варианты через std::next_permutation перебирает.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ищу прогу поиска слов с перетасовкой бит
СообщениеДобавлено: 18 окт 2018, 00:53 
Старожил
Аватара пользователя

Зарегистрирован: 13 май 2010, 01:32
Сообщения: 1941
Откуда: Из сказки.
о, это уже интересно
я проглядел

_________________
vk.cc/arXpXv


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ищу прогу поиска слов с перетасовкой бит
СообщениеДобавлено: 18 окт 2018, 10:06 
Старожил
Аватара пользователя

Зарегистрирован: 06 ноя 2013, 16:07
Сообщения: 711
Откуда: Германия
selevo писал(а):
dev
мне твой код мозг вынес,


Ага ;)

selevo писал(а):
В каком месте кода происходит например смена местами битов 0 и 7 ?


Нет там никаких ротаций. А смена бит: if(c1 & (1 << o[i])) c2 |= (1 << i);


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ищу прогу поиска слов с перетасовкой бит
СообщениеДобавлено: 19 окт 2018, 11:18 
Старожил

Зарегистрирован: 27 мар 2015, 01:22
Сообщения: 1953
selevo писал(а):
Непонятно...
То ли у меня скорость мысли замедлилась то ли у других.
Но по-моему пургу несете.


Я файл предоставить не могу, а для проверки можно и просто в слове: передача -сместить по кольцу все биты в байтах да хоть на 1 влево и все
,вот получится заготовка для проверки.
брейн ринг - фигня какая, делать чтоль нех мне...
Я всегда делом занят но редкое дело мое - не херня, но это уже другая тема.

Или ускорилась до неуловимости
Вообще, решение проблемы отличается от разговоров о решении проблемы
В первом случае цель решить, во втором - поговорить

_________________
mcu.goodboard.ru


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ищу прогу поиска слов с перетасовкой бит
СообщениеДобавлено: 19 окт 2018, 17:51 
Старожил

Зарегистрирован: 30 апр 2010, 22:56
Сообщения: 1589
Откуда: Киев
по-моему вообще все просто. Надо "транспонировать" шаблон и сравнивать на соответствие цепочки соответствующих битов из каждого байта.

Например (для четырехбитовых байтов):
искомая последовательность (шаблон): 0001, 0101, 1100
данные: 0000, 0010, 0110, 1100, 1111

транспонируем шаблон:
001 - старшие биты
011
000
110 - младшие биты

транспонируем первые три байта данных:
000
001
011
000

построчно сравниваем, есть несовпадение, пропускаем, транспонируем следующие три байта:
001
011
110
000
Сравниваем - есть совпадение. и видно, что переставлены нижние строки.


Дополнительно можно ввести эвристику - подсчитывать количество единичных бит в байте. При перестановках бит это количество - инвариант. Быстро в данных находим кандидатов на шаблон, и потом проверяем как указанно выше на полное совпадение.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 34 ]  На страницу Пред.  1, 2


Часовой пояс: UTC + 5 часов


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB