问题标签 [list]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
8 回答
37658 浏览

java - 哪个清单 implementation will be the fastest for one pass write, read, then destroy?

What is the fastest list implementation (in java) in a scenario where the list will be created one element at a time then at a later point be read on

What is the fastest list implementation (in java) in a scenario where the list will be created one element at a time then at a later point be read one element at a time? The reads will be done with an iterator and then the list will then be destroyed.
I know that the Big O notation for get is O(1) and add is O(1) for an ArrayList, while LinkedList is O(n) for get and O(1) for add. Does the iterator behave with the same Big O notation?


Iterating through a linked list is O(1) per element.

The Big O runtime for each option is the same. Probably the ArrayList will be faster because of better memory locality, but you'd have to measure it to know for sure. Pick whatever makes the code clearest.

0 投票
2 回答
6444 浏览

sharepoint - Sharepoint:在列表中部署自定义列表和新列

我创建了一个自定义列表并在公告列表中添加了一个列。问题是,当我创建一个新的 Web 应用程序(如脚本、功能或其他东西)时,如何包含这些新创建的项目?

附加信息:就像您要从开发机器部署到登台或生产服务器时一样。我想要一个脚本或其他东西来更新我的生产服务器以将我添加到公告列表中的新列。就像 SQL Server 的 ALTER TABLE 命令更新 SQL Server 表一样。

Sharepoint 列表中是否有等价物?

蒂亚!

0 投票
16 回答
20154 浏览

list - Perl 的地图有什么意义?

没有真正理解地图功能的意义。任何人都可以用例子解释它的用途吗?

使用它而不是循环是否有任何性能优势,或者它只是糖?

0 投票
3 回答
3824 浏览

c++ - std::list 上的 splice() 和迭代器失效

的 3 参数形式list::splice()将单个元素从一个列表移动到另一个列表。 SGI 的文档明确指出所有迭代器,包括指向被移动元素的迭代器仍然有效。 Roguewave 的文档没有说明splice()方法的迭代器失效属性,而 C++ 标准明确声明它使所有迭代器和对被拼接元素的引用失效。

splicing() 在实践中按照 SGI 的定义工作,但在微软 STL 实现的调试/安全 SCL 版本(严格遵循标准的字母)中出现断言失败(取消引用无效迭代器)。

现在,我使用 list 正是因为我想在列表之间移动一个元素,同时保留指向它的迭代器的有效性。该标准对原始 SGI 的规范进行了极其无益的更改。

我该如何解决这个问题?或者我应该务实一点,把头埋在沙子里(因为在实践中拼接不会使迭代器失效——即使在 MS 的实现中,一旦迭代器调试被关闭)。

0 投票
16 回答
1313 浏览

language-agnostic - 哪些游戏在游戏玩法中包含编码?

每个答案一个标题。

0 投票
2 回答
5805 浏览

api - 如何使用 .NET 在 GAL 中创建 Exchange 分发列表?

我们需要从 Asp.Net 远程创建一个 Exchange 2007 分发列表。

据我所知,在 GAL 中创建分发列表的唯一方法是通过交换管理工具。如果不在我们的网络服务器上安装它,有没有办法远程创建分发列表?有一些第三方组件允许您创建个人分发列表,但这些组件仅存在于用户联系人文件夹中,并非对公司内的所有用户都可用。

理想情况下,会有某种 Web 服务调用来交换或我们可以使用的 API。Exchange SDK 提供了管理 Exchange 数据(例如电子邮件、联系人、日历等)的能力。似乎没有 Exchange 管理 API。

看起来分发列表作为具有特殊 Exchange 属性的组对象存储在 AD 中,但似乎没有任何关于它们应该如何工作的文档。

编辑:我们可以对 Exchange 对 AD 所做的事情进行逆向工程,但我担心的是,随着 Exchange 的下一个服务包,这一切都会中断。

是否有 API 可用于管理 Active Directory 中的通讯组列表而无需通过 Exchange?

0 投票
12 回答
270167 浏览

.net - HashSet 与 List 性能

很明显,泛型类的搜索性能HashSet<T>高于泛型List<T>类。只需将基于散列的键与List<T>类中的线性方法进行比较。

然而,计算哈希键本身可能需要一些 CPU 周期,因此对于少量项目,线性搜索可以真正替代HashSet<T>.

我的问题:盈亏平衡点在哪里?

为了简化场景(公平起见),让我们假设List<T>该类使用元素的Equals()方法来标识一个项目。

0 投票
7 回答
5585 浏览

c# - 在 C# 2.0 中同步两个 IList 的最佳算法

想象一下以下类型:

IList<Account>在 C# 2.0中同步两个的最佳算法是什么?(没有 linq)?

第一个列表(L1)是参考列表,第二个(L2)是根据第一个同步的:

  • L2 中不再存在于 L1 中的所有帐户必须从 L2 中删除
  • 必须更新 L2 中仍然存在于 L1 中的所有帐户(金额属性)
  • 所有在 L1 中但尚未在 L2 中的帐户都必须添加到 L2

Id 标识帐户。找到一个幼稚且有效的算法并不难,但我想知道是否有一个聪明的解决方案来处理这种情况而不会破坏可读性和性能。

编辑

  • 帐户类型无关紧要,可以是一个类、具有属性、相等成员等。
  • L1 和 L2 未排序
  • L2 项目不能被 L1 项目替换,它们必须更新(逐个字段,逐个属性)
0 投票
1 回答
418 浏览

generics - 在服务组件上使用通用列表

我正在尝试将通用列表用作ServicedComponent类的属性...

代码编译没有错误,但是当我尝试使用MyList来自不同类的 com 对象上的属性时,没有值被添加到列表中。谷歌“告诉我”我不能在组件上使用泛型,但我还没有找到一个很好的解释为什么会这样以及一个很好的解决问题的方法。

有人可以帮我吗?

0 投票
4 回答
20248 浏览

c# - 如何转换列表 to Hashtable in C#?

I have a list of objects, each containing an Id, Code and Description.

I need to convert this list into a Hashtable, using Description as the key and Id as the

I have a list of objects, each containing an Id, Code and Description.

I need to convert this list into a Hashtable, using Description as the key and Id as the value.

This is so the Hashtable can then be serialised to JSON.

Is there a way to convert from List<Object> to Hashtable without writing a loop to go through each item in the list?


If you have access to Linq, you can use the ToDictionary function.