拓扑排序,逻辑开关

Posted codingplus

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了拓扑排序,逻辑开关相关的知识,希望对你有一定的参考价值。

拓扑排序

是的,这个名字很怪.我们可以找一个直观的名字去描述拓扑排序,这个名字叫做不包含强连通子图.类似于不能出现1是2的父亲,2是1的父亲(这是一个很奇葩的例子)那么这种含有强连通子图,那么就倒霉了,他就不叫拓扑图,那么就无法用来dp了(这个后面会说)

那么如果没有类似于强连通子图(连通图),那么就恭喜你,这道题就可以使用dp来进行解决了,如果你的dp不熟悉,那么也可以另找退路,类似于记忆化搜索解决(这个后面会说到).

拓扑作用

如果你想使用dp解决在图中的题目,你必须保证此图是拓扑图.

如果无法保证该图是拓扑图,那么也要恭喜你,你排除了一个无法使用的算法.

大概,以上就是拓扑了.
下面就是一座崭新的世界

逻辑开关

首先,我先上一段代码:

if(x>5)
{
ans=ans+x;
}

很简洁但是实际上看起来一点都不高大上,在下面,我提供一种简单的算法:

ans=ans+(x>5)*x;

是的,我相信你已经看懂了.

以上是我归来的第一篇内容,也是一篇纪念,以后可以回来再复习,也希望给大家带来参考.

 

 

blog by smallfang

以上是关于拓扑排序,逻辑开关的主要内容,如果未能解决你的问题,请参考以下文章

try1

C# 8 开关表达式

ViewPager开关没有显示片段之间

(王道408考研数据结构)第六章图-第四节6:拓扑排序(AOV网代码排序规则)

拓扑排序算法实现

拓扑排序代码: