有关如何检查该列表是否是另一个列表的任何想法?
具体来说,我有
List<double> t1 = new List<double> { 1, 3, 5 };
List<double> t2 = new List<double> { 1, 5 };
Run Code Online (Sandbox Code Playgroud)
如何使用LINQ检查t2是否为t1的子集?
我有以下方法:
namespace ListHelper
{
public class ListHelper<T>
{
public static bool ContainsAllItems(List<T> a, List<T> b)
{
return b.TrueForAll(delegate(T t)
{
return a.Contains(t);
});
}
}
}
Run Code Online (Sandbox Code Playgroud)
其目的是确定List是否包含另一个列表的所有元素.在我看来,这样的东西已经内置到.NET中,就是这样,我是否复制了功能?
编辑:我很抱歉没有说明我在Mono版本2.4.2上使用此代码.
这是一个面试问题(电话屏幕):编写一个函数(用Java)来查找给定文本中出现的给定单词的所有排列.例如,对于单词abc和文本abcxyaxbcayxycab,函数应该返回abc, bca, cab.
我会回答这个问题如下:
显然,我可以遍历给定单词的所有排列并使用标准substring函数.但是(现在对我来说)编写代码以生成所有单词排列可能很困难.
循环遍历单词大小的所有文本子字符串,对每个子字符串进行排序并将其与"已排序"的给定单词进行比较更容易.我可以立即编写这样的函数.
我可以修改一些子串搜索算法,但我现在不记得这些算法了.
你会如何回答这个问题?