作者:iar2984165 | 来源:互联网 | 2023-09-12 08:01
堆(优先队列)的灵活用法 我想大家都应该知道什么事堆了。所以,这里就不再介绍了。如果,不知道的话,可以自己去网上查一下资料。 堆在竞赛中运用非常的灵活,因此一般可以
Task 类代表异步操作,使用Task可以方便的实现CPU消耗操作的同步或者异步操作。
public static Task> TrackedSequence(this TaskFactory factory, params Func [] functions)public Task ContinueWhenAll(Task[] tasks, Action[]> continuationAction);Task 意味着可以不用自己定义线程,直接就能够进行异步操作。
Func 和 Action 的区别很简单,Func 是有返回值的委托, Action 是没有返回值的委托。
Func 通常用在LINQ;
list.Select(x=>x.SomeProperty)
或者过滤:
list.Where(x=>x.SomeValue==someOtherValue)
或者 key selection:
list.Join(otherList, x=>x.FirstKey, y=>y.SecondKey,...)
Action 通常用在 List.ForEach 之类的。为每个 item 执行给定动作。可以用无参数的 Action 来执行类似: Control.BeginInvoke 或者 Dispatcher.BeginInvoke.
Predicate 实际上是 Func 的一个特例。
堆(优先队列)的灵活用法,布布扣,bubuko.com