Вопросы по теме 'abstract-data-type'

Зачем использовать две стопки для создания очереди?
Я вижу преимущество использования двух стеков, если используется реализация массива, поскольку стеки легче реализовать с использованием массивов, чем очереди. Но если используются связанные списки, в чем преимущество? Выталкивание стека в очередь...
8361 просмотров
schedule 12.01.2023

Замена Clojure для ADT Haskell и сопоставление с образцом?
Всякий раз, когда в Haskell нам нужен какой-то вариантный тип данных, мы будем использовать ADT в сочетании с сопоставлением с образцом. Что разработчики Clojure используют для таких случаев?
2082 просмотров

Лучший способ реализовать специальный полиморфизм в Haskell?
У меня есть полиморфная функция, например: convert :: (Show a) => a -> String convert = " [label=" ++ (show a) ++ "]" Но иногда я хочу передать ему Data.Map и сделать более причудливое преобразование значения ключа. Я знаю, что здесь...
1082 просмотров

Класс типа из подмножества класса рекурсивного типа (или тип из рекурсивного типа)
Как создать класс рекурсивного типа, который ведет себя как другой класс рекурсивного типа, но имеет меньше экземпляров, чем родительский класс? Вот пример: data Atom = Atom data (Formula a) => Negation a = Negation a class Formula a where...
790 просмотров

Сложность времени для Java ArrayList
Я нашел другие записи по этому вопросу, которые касались конкретных методов, но ничего всеобъемлющего. Я хотел бы проверить свое собственное понимание наиболее часто используемых методов этой структуры данных: O(1) - постоянное время:...
59585 просмотров

Что такое ADT? (Абстрактный тип данных)
В настоящее время я изучаю абстрактные типы данных (ADT), но я вообще не понимаю концепции. Может кто-нибудь объяснить мне, что это на самом деле? Также что такое сбор, сумка и список ADT? простыми словами?
123903 просмотров

создание ADT с использованием его функции - C
Итак, я пытаюсь написать функцию, которая возвращает указатель на ADT в куче. Проблема в том, что я не могу манипулировать им после выделения памяти. Вот упрощенный код typedef struct _entity { int value; } *Entity; Entity *new_entity()...
1041 просмотров
schedule 01.07.2022

Как поместить элементы в стек, используя массив void* в качестве структуры данных?
В последнее время я пишу код на C для универсального стека, используя массив указателей void. После выполнения некоторых тестов все было в порядке, до последнего теста: while(i < 9) { push_pila(mi_pila,(int*)&i); i++; } Как...
982 просмотров

Есть ли преимущества в использовании векторных типов CUDA?
CUDA предоставляет встроенные типы векторных данных, такие как uint2 , uint4 и так далее. Есть ли преимущества в использовании этих типов данных? Предположим, что у меня есть кортеж, состоящий из двух значений, A и B. Один из способов сохранить...
14488 просмотров
schedule 08.03.2023

Рекурсивные типы данных в sml
Есть ли способ определить тип данных для целых чисел. то есть 0,1,2,... не ноль, один,... индивидуально. Я хочу определить набор целых чисел. bu с использованием 0, n, n+1 с рекурсией. Я пробовал что-то вроде этого: тип данных nat=0|n|n+1 . Но...
659 просмотров

В чем разница между абстрактным типом данных (ADT) и структурой данных?
Я обнаружил, что книги и онлайн-ресурсы используют оба термина взаимозаменяемо, не показывая явного различия.
28366 просмотров

Является ли «инвариантное» свойство частью определения абстракции?
В рамках моего обучения я думаю, что лучший ответ (со смыслом) для определения абстракции, который я нашел, взят из stackoverflow: Что такое абстракция? Кроме того, В рамках текущего онлайн-курса cs61B Fall 2006, Беркли, я изучил...
310 просмотров

Как я могу разрешить пользователю изменять значение дробей?
Я должен написать программу, которая имеет num и denom в качестве элементов данных класса Fractions. Я также должен включить функцию-конструктор, которая устанавливает оба значения равными 1 или разрешает инициализацию пользователя, перегруженную...
93 просмотров
schedule 22.11.2023

Ошибка компоновщика реализации кольцевого буфера
Я реализую конструкцию кольцевого буфера на C++ в ходе семинара, который мы проходим. Теперь исходный код может быть в порядке, но компоновщик просто не будет работать должным образом - или, что более вероятно, мой код или настройки проекта....
126 просмотров
schedule 28.07.2023

Написание алгебраического типа данных в Scala
В Haskell я могу определить Tree : data Tree a = Empty | Node a (Tree a) (Tree a) Как я мог написать это на Scala? Я не уверен, как сохранить параметр типа [A] в Scala для Node , чтобы он соответствовал типу Tree , a .
5597 просмотров

Лучший способ итерации непрозрачного абстрактного типа данных
Я пишу хеш-таблицу и использую непрозрачный указатель для управления этим АТД. Вот как выглядит мой код: hash_table.h typedef struct hash_table *Hash_table; Hash_table hash_table_init(int size, int(*compare)(void *key_a, void *key_b),...
496 просмотров
schedule 02.07.2023

10- или 12-битный тип данных поля в С++
Можно ли определить некоторый тип данных нечетного размера вместо стандартных типов, используя type-def, например 10-битный или 12-битный в С++?
8261 просмотров
schedule 01.12.2022

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

Дерево ADT - является ли узел предком/потомком самого себя?
Я начну с того, что в Stack Overflow есть еще один вопрос по этому поводу, но я не смог найти реального ответа на него, потому что все ответы, связанные с этим вопросом, отличались друг от друга, и это действительно смутило меня больше, чем я уже...
1676 просмотров

Что такое векторная структура данных
Я знаю Vector в C++ и Java, это похоже на динамический массив, но я не могу найти общего определения структуры данных Vector. Так что же такое Вектор? Является ли Vector общей структурой данных (например, массивом, стеком, очередью, деревом и т. д.)...
35640 просмотров