Structures
Content:
public abstract class ChunkedDictionary<TKey, TGlobalKey, TLocalKey, TValue> : IDictionary<TKey, TValue>
Language: C#
Абстрактный базовый класс для разреженного словаря с поддержкой чанков (chunks).
Разделяет ключи на глобальную и локальную части для эффективного хранения больших разреженных данных.
Все операции потокобезопасны благодаря встроенной синхронизации.Type Parameters:
- TKey: Тип объединённого ключа
- TGlobalKey: Тип глобальной части ключа (для идентификации чанка)
- TLocalKey: Тип локальной части ключа (для идентификации элемента в чанке)
- TValue: Тип значения
public class ChunkedDictionary2D<T> : ChunkedDictionary<FVector2, IVector2, FVector2, T>
Language: C#
2D словарь с поддержкой чанков для хранения данных в 2D сетке с вещественными координатами (FVector2).
Использует целочисленные координаты чанков (IVector2) для эффективного разделения пространства.
Позволяет переопределять размер сетки и автоматически перестраивает структуру при изменении.Type Parameters:
- T: Тип значений, хранящихся в словаре
public class ChunkedDictionary2DI<T> : ChunkedDictionary<IVector2, IVector2, IVector2, T>
Language: C#
2D словарь с поддержкой чанков для целочисленных координат (IVector2).
Использует целочисленное разделение пространства на чанки для хранения целочисленных данных.
Позволяет переопределять размер сетки и автоматически перестраивает структуру при изменении.Type Parameters:
- T: Тип значений, хранящихся в словаре
public class ChunkedDictionary3D<T> : ChunkedDictionary<FVector3, IVector3, FVector3, T>
Language: C#
3D словарь с поддержкой чанков для хранения данных в 3D сетке с вещественными координатами (FVector3).
Использует целочисленные координаты чанков (IVector3) для эффективного разделения 3D пространства.
Позволяет переопределять размер сетки и автоматически перестраивает структуру при изменении.Type Parameters:
- T: Тип значений, хранящихся в словаре
public class ChunkedDictionary3DI<T> : ChunkedDictionary<IVector3, IVector3, IVector3, T>
Language: C#
3D словарь с поддержкой чанков для целочисленных координат (IVector3).
Использует целочисленное разделение 3D пространства на чанки для хранения целочисленных данных.
Позволяет переопределять размер сетки и автоматически перестраивает структуру при изменении.Type Parameters:
- T: Тип значений, хранящихся в словаре
public class SortedTree<T>
Language: C#
Самобалансирующееся двоичное дерево поиска (AVL дерево) для хранения отсортированных элементов.
Поддерживает быстрый поиск, добавление и удаление элементов с временной сложностью O(log n).
Использует компаратор для определения порядка сортировки элементов.Type Parameters:
- T: Тип элементов, хранящихся в дереве