【发布时间】:2019-01-07 13:02:05
【问题描述】:
我是 q# 编程的新手。
我有一个号码列表:
1 3 2 3 2 4 5 2 3 6 4 2 1 6 3 2 1
现在,我想在 Q programming language 中生成一组唯一的数字,其中最终输出必须是:1 2 3 4 5 6
【问题讨论】:
-
在c#中存在List的Distinct()方法,我相信有类似Q#的东西
我是 q# 编程的新手。
我有一个号码列表:
1 3 2 3 2 4 5 2 3 6 4 2 1 6 3 2 1
现在,我想在 Q programming language 中生成一组唯一的数字,其中最终输出必须是:1 2 3 4 5 6
【问题讨论】:
Q# 中没有用于此的库方法,因此您必须自己实现它。如果可能数字的范围很小(最多 N),您可以分配一个额外的 N 个元素数组并标记输入数组中出现的所有数字。否则,您可以对输入数组进行排序并返回所有与它们之前和之后的数字不同的数字。
话虽如此,我想知道为什么您需要在 Q# 中执行此操作? Q# 是一种特定领域的语言,所以很多事情是通用语言中的一个或两个库调用,在 Q# 中执行起来可能相当不方便。在 C# 或 F# 驱动程序中执行它们并将结果作为参数传递给 Q# 代码通常要容易得多。
【讨论】: