А что не так? Вполне себе работал с sqlite базами одновременно из нескольких процессов. Ограничение одно - пишущий лочит всю базу, остальным приходится ждать в очереди. При небольшом количестве записей это не критично. А если все процессы локальные, то при wal ещё и читатели не мешают писать, в rollback режиме журнала сложнее - писателю приходится ждать, пока старые читатели почитают, новым читателям ждать, пока писатель допишет.
Сейчас все наоборот стараются побольше инлайнить, а у вас наоборот. Возможно для каких-нибудь микроконтроллеров, где память ценный ресурс, имеет смысл. А так - ваш mov cx, 1 который вы вынесли в call, в большинстве случаев был бы бесплатным, проц бы его спараллелил с другими инструкциями. А в таком виде увы.
Дико извиняюсь, но для данной задачи не надо ни хеш-таблиц, ни бинарного поиска.
Так как массивы упорядочены, достаточно проходить одновременно по двум массивам, сравнивая их элементы, продвигаясь в том массиве, в котором текущий элемент меньше, чем в другом массиве (если упорядочение по возрастанию). Если равны - печатаем дубль и продвигаемся в обоих массивах. Время O(max(M, N)), память О(1).
Эх, помню на Yamaha MSX в Бейсике команда DRAW была, примерно с таким же синтаксисом. Конец 80ых прошлого века.
А что не так? Вполне себе работал с sqlite базами одновременно из нескольких процессов. Ограничение одно - пишущий лочит всю базу, остальным приходится ждать в очереди. При небольшом количестве записей это не критично. А если все процессы локальные, то при wal ещё и читатели не мешают писать, в rollback режиме журнала сложнее - писателю приходится ждать, пока старые читатели почитают, новым читателям ждать, пока писатель допишет.
Собственно партиционирование и шардирование примерно по этому принципу "унутре" и работают. Только без "закатывания солнца вручную".
Сейчас все наоборот стараются побольше инлайнить, а у вас наоборот. Возможно для каких-нибудь микроконтроллеров, где память ценный ресурс, имеет смысл. А так - ваш mov cx, 1 который вы вынесли в call, в большинстве случаев был бы бесплатным, проц бы его спараллелил с другими инструкциями. А в таком виде увы.
Краткость сообщений там привела к такому уродливому явлению, как текст картинкой.
Триста тридцать пять....
Уважаемый автор, если не ошибаюсь, ещё с начала нулевых убийцу 1С пишет, ещё с 7.7 :)
Тогда примерно раз в неделю очередной убийца на мисте начинался.
"Многие ждали меня в лесу, возле выкопанной ямы, видишь как всем им теперь к лицу, пиджачок деревянный".
Дико извиняюсь, но для данной задачи не надо ни хеш-таблиц, ни бинарного поиска.
Так как массивы упорядочены, достаточно проходить одновременно по двум массивам, сравнивая их элементы, продвигаясь в том массиве, в котором текущий элемент меньше, чем в другом массиве (если упорядочение по возрастанию). Если равны - печатаем дубль и продвигаемся в обоих массивах. Время O(max(M, N)), память О(1).