Найдено результатов: 12

Двоичные данные в MySQL

Как хранить двоичные данные в MySQL ?

mysql   database   binary-data   data-storage    

617   9   16:03, 1st July, 2020


Как вы выражаете двоичные литералы в Python?

Как выразить целое число в виде двоичного числа с Python литералами?

Я с легкостью нашел ответ на вопрос hex:

>>> 0x12AF
4783
>>> 0x100
256

и восьмеричный:

>>> 01267
695
>>> 0100
64

Как вы используете литералы для выражения двоичного кода в Python?


Резюме ответов

  • Python 2.5 и ранее: может выражать двоичный код с помощью int('01010101111',2) , но не с помощью литерала.
  • Python 2.5 и ранее: нет никакого способа выразить двоичные литералы.
  • Python 2.6 бета: вы можете сделать так: 0b1100111 или 0B1100111 .
  • Python 2.6 beta: также позволит 0o27 или 0O27 (второй символ-буква O) представлять восьмеричное число.
  • Python 3.0 beta: то же самое, что и 2.6, но больше не позволяет использовать старый синтаксис 027 для окталов.

python   syntax   binary   integer   literals    

607   6   16:03, 1st July, 2020


Чтение двоичного файла в структуру

Я пытаюсь читать двоичные данные с помощью C#. у меня есть вся информация о расположении данных в файлах, которые я хочу прочитать. Я могу читать данные "кусок за куском", т. е. получать первые 40 байт данных, преобразовывая их в строку, получать следующие 40 байт.

Поскольку существует по крайней мере три слегка отличающихся версии данных, я хотел бы прочитать данные непосредственно в структуру. Это просто кажется гораздо более правильным, чем при чтении его "line by line".

Я попробовал следующий подход, но безрезультатно:

StructType aStruct;
int count = Marshal.SizeOf(typeof(StructType));
byte[] readBuffer = new byte[count];
BinaryReader reader = new BinaryReader(stream);
readBuffer = reader.ReadBytes(count);
GCHandle handle = GCHandle.Alloc(readBuffer, GCHandleType.Pinned);
aStruct = (StructType) Marshal.PtrToStructure(handle.AddrOfPinnedObject(), typeof(StructType));
handle.Free();

Поток-это открытый FileStream, из которого я начал читать. Я получаю AccessViolationExceptio n при использовании Marshal.PtrToStructure .

Поток содержит больше информации, чем я пытаюсь прочитать, так как меня не интересуют данные в конце файла.

Структура определяется следующим образом:

[StructLayout(LayoutKind.Explicit)]
struct StructType
{
    [FieldOffset(0)]
    public string FileDate;
    [FieldOffset(8)]
    public string FileTime;
    [FieldOffset(16)]
    public int Id1;
    [FieldOffset(20)]
    public string Id2;
}

Код примеров изменен с оригинала, чтобы сделать этот вопрос короче.

Как бы я мог читать двоичные данные из файла в структуру?

c#   struct   io   binaryfiles    

458   7   16:03, 1st July, 2020


Ссылка на макет двоичного файла

Где находятся некоторые хорошие источники информации о структурах макета двоичных файлов?

Если бы я хотел вытащить файл индекса BTrieve , проанализировать заголовки MP3 и т. д. Где можно получить достоверную информацию?

language-agnostic   data-structures   file   binary    

439   2   16:03, 1st July, 2020


Лучшая самобалансировка BST для быстрого ввода большого количества узлов

Я смог найти подробности о нескольких самобалансирующихся BST через несколько источников, но я не нашел хороших описаний, детализирующих, какой из них лучше всего использовать в разных ситуациях (или если это действительно не имеет значения).

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

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

data-structures   language-agnostic   binary-search-tree    

516   3   16:03, 1st July, 2020


Чтение двоичного файла в структуру

Я пытаюсь читать двоичные данные с помощью C#. у меня есть вся информация о расположении данных в файлах, которые я хочу прочитать. Я могу читать данные "кусок за куском", т. е. получать первые 40 байт данных, преобразовывая их в строку, получать следующие 40 байт.

Поскольку существует по крайней мере три слегка отличающихся версии данных, я хотел бы прочитать данные непосредственно в структуру. Это просто кажется гораздо более правильным, чем при чтении его "line by line".

Я попробовал следующий подход, но безрезультатно:

StructType aStruct;
int count = Marshal.SizeOf(typeof(StructType));
byte[] readBuffer = new byte[count];
BinaryReader reader = new BinaryReader(stream);
readBuffer = reader.ReadBytes(count);
GCHandle handle = GCHandle.Alloc(readBuffer, GCHandleType.Pinned);
aStruct = (StructType) Marshal.PtrToStructure(handle.AddrOfPinnedObject(), typeof(StructType));
handle.Free();

Поток-это открытый FileStream, из которого я начал читать. Я получаю AccessViolationExceptio n при использовании Marshal.PtrToStructure .

Поток содержит больше информации, чем я пытаюсь прочитать, так как меня не интересуют данные в конце файла.

Структура определяется следующим образом:

[StructLayout(LayoutKind.Explicit)]
struct StructType
{
    [FieldOffset(0)]
    public string FileDate;
    [FieldOffset(8)]
    public string FileTime;
    [FieldOffset(16)]
    public int Id1;
    [FieldOffset(20)]
    public string Id2;
}

Код примеров изменен с оригинала, чтобы сделать этот вопрос короче.

Как бы я мог читать двоичные данные из файла в структуру?

c#   struct   io   binaryfiles    

523   7   16:03, 1st July, 2020


Ссылка на макет двоичного файла

Где находятся некоторые хорошие источники информации о структурах макета двоичных файлов?

Если бы я хотел вытащить файл индекса BTrieve , проанализировать заголовки MP3 и т. д. Где можно получить достоверную информацию?

language-agnostic   data-structures   file   binary    

431   2   16:03, 1st July, 2020


Лучшая самобалансировка BST для быстрого ввода большого количества узлов

Я смог найти подробности о нескольких самобалансирующихся BST через несколько источников, но я не нашел хороших описаний, детализирующих, какой из них лучше всего использовать в разных ситуациях (или если это действительно не имеет значения).

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

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

data-structures   language-agnostic   binary-search-tree    

433   3   16:03, 1st July, 2020


Оценка экспрессии и Хождение по деревьям с использованием полиморфизма? (Ала Стив Егге)

Сегодня утром я читал книгу Стива Йегге "когда полиморфизм терпит неудачу", когда наткнулся на вопрос, который его коллега обычно задавал потенциальным сотрудникам, когда они приходили на собеседование в Amazon.

Как пример полиморфизма в действие, давайте посмотрим на классику "eval" вопрос интервью, который (как насколько я знаю) был доведен до Amazon автор: Рон Браунштейн. Вопрос в том довольно богатый, как ему удается зондируйте большое разнообразие важных навыки: OOP дизайн, рекурсия, двоичный код деревья, полиморфизм и время выполнения набор текста, общие навыки кодирования и (если вы хотите сделать его еще более трудным) теория парсинга.

В какой-то момент кандидат с надеждой осознает, что вы можете представлять собой арифметическое выражение в двоичном виде дерево, предполагая, что вы только используете бинарные операторы, такие как" +", "-", "* " ,"/". Листовые узлы - это все числа, а внутренние узлы являются все операторы. Оценка состояния выражение означает ходить по дереву. Если кандидат этого не понимает, вы можете мягко привести их к этому, или если это необходимо, просто скажи им.

Даже если ты расскажешь им, это все равно будет неприятно. интересная проблема.

Первая половина вопроса, которая некоторые люди (чьи имена я буду называть защищать до последнего вздоха, но их инициалы-Вилли Льюис) feel is a Требования К Работе, Если Вы Хотите Позвонить Вы Сами Разработчик И Работаете На Amazon, на самом деле довольно сложно. То вопрос заключается в следующем: как вы идете от Ан арифметическое выражение (например, в a строку), такие как "2 + (2)" к дерево выражения. У нас может быть ADJ вызов по этому вопросу у некоторых точка.

Вторая половина такова: допустим, это проект из 2 человек и ваш партнер, кого мы будем называть "Willie", это ответственный за преобразование строковое выражение в дереве. Вы получаете самая простая часть: вам нужно решить, что именно классы Вилли должен построить дерево С. Вы можете сделать это в любом случае язык, но убедитесь, что вы выбираете один, или Вилли вручит тебе assembly язык. Если он чувствует себя раздраженным, то это будет для процессора то есть нет дольше производится в производстве.

Вы были бы поражены, узнав, сколько кандидатов БОФФ вот этот.

Я не буду давать вам ответ, но ... Стандартное плохое решение предполагает использование состояния переключателя или случая (или просто доброе старомодное каскадное "если"). Один Немного лучшее решение включает в себя использование таблицы указателей функций, и вероятно лучшее решение предполагает использование полиморфизма. Я рекомендуем вам работать через него иногда. Забавная штука!

Итак, давайте попробуем решить эту проблему всеми тремя способами. Как перейти от арифметического выражения (например, в строке), такого как "2 + (2)", к дереву выражений, используя каскадные if, таблицу указателей функций и / или полиморфизм?

Не стесняйтесь решать один, два или все три вопроса.

[update: заголовок изменен, чтобы лучше соответствовать тому, что было в большинстве ответов.]

oop   recursion   polymorphism   binary-tree    

533   16   03:31, 22nd August, 2020


Как вы внедряете двоичные данные в XML?

У меня есть два приложения, написанные на Java, которые взаимодействуют друг с другом с помощью XML сообщений по сети. Я использую парсер SAX на приемном конце, чтобы получить данные обратно из сообщений. Одним из требований является встраивание двоичных данных в сообщение XML, но SAX это не нравится. Кто-нибудь знает, как это сделать?

UPDATE: я получил это, работая с классом Base64 из библиотеки кодеков apache commons, На случай, если кто-то еще пытается сделать что-то подобное.

java   xml   binary   binary-data    

824   12   06:26, 28th August, 2020


Красно-Черные Деревья

Я видел бинарные деревья и бинарный поиск, упомянутые в нескольких книгах, которые я читал в последнее время, но поскольку я все еще в начале моих исследований в области компьютерных наук, я еще не прошел курс, который действительно имел дело с алгоритмами и структурами данных серьезным образом.

Я проверил все типичные Источники (Википедия, Google), и большинство описаний полезности и реализации (в частности) красно-черных деревьев оказались настолько плотными и трудными для понимания. Я уверен, что для кого-то с необходимым фоном это имеет идеальный смысл, но в данный момент он читается почти как иностранный язык.

Итак, что же делает бинарные деревья полезными в некоторых общих задачах, которые вы делаете во время программирования? Кроме того, какие деревья вы предпочитаете использовать (пожалуйста, включите пример реализации) и почему?

algorithm   binary-tree   red-black-tree    

668   12   19:47, 19th August, 2020


Двоичный буфер в Python

В Python вы можете использовать StringIO как файловый буфер для символьных данных. Сопоставленный с памятью файл в основном делает то же самое для двоичных данных, но для этого требуется файл, который используется в качестве основы. Есть ли у Python файловый объект, предназначенный для двоичных данных и являющийся только памятью, эквивалентной Java ByteArrayOutputStream ?

У меня есть вариант использования: я хочу создать файл ZIP в памяти, а ZipFile требует файлоподобного объекта.

python   binary   io   buffer    

442   3   10:46, 1st August, 2020