【发布时间】:2015-03-08 15:07:17
【问题描述】:
是否可以将 List 转换为 Queue 元素? 到目前为止,我使用下面的代码,但如果 c# 中有构建方法,则不需要添加额外的循环
queue1.Clear();
foreach (int val in list1)
{
queue1.Enqueue(val);
}
有什么办法吗?
【问题讨论】:
-
有一个接受
IEnumerable<T>的构造函数,但这也是O(n)。我已经检查了来源,但它并没有根据ICollection<T>保留空间。 -
实际上,取决于
queue1的来源可能会真正影响这一点(因此撤回了我的欺骗性接近投票)。例如,如果它是函数的参数,则不能只将其分配给new Queue。你必须清除/重新加载它等等。