gpt4 book ai didi

language-agnostic - 列表中对象的 "order"属性的数据结构

转载 作者:行者123 更新时间:2023-12-04 07:06:31 25 4
gpt4 key购买 nike

我有一个存储在数据库中并通过 ORM(特别是 Django 的 ORM)访问的有序对象列表。该列表由用户任意排序,我需要某种方式来跟踪它。为此,每个对象都有一个“顺序”属性,用于指定其相对于其他对象的顺序。

我用来在这个订单字段上排序的任何数据结构都必须根据请求重新创建,因此创建必须很便宜。我会经常使用多个对象之间的比较。插入不能要求我更新数据库中的每一行。

我应该使用什么数据结构?

最佳答案



std::set 实现( c++ ) 与值进行比较(取决于存储的值),例如整数按值,字符串按字符串排序等。适合排序和访问,但不确定何时需要重新排序,是在插入期间,不断等等。

您没有指定您还有哪些其他约束。如果知道元素的数量并且在内存中保持固定数组是合理或可能的,那么每个位置将由索引指定。假设元素数量固定。

您没有指定是否需要经常执行的操作。
如果您加载一次值然后不加修改地访问它们,您可以使用一种算法进行创建,然后构建索引或转换存储以能够使用快速访问......

关于language-agnostic - 列表中对象的 "order"属性的数据结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1042565/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com