求大佬科普,switch的运算很慢吗?

P1200 [USACO1.1] 你的飞碟在这儿 Your Ride Is Here

@[君梦如烟](/space/show?uid=255761) 先不管速度,反正很麻烦QwQ
by 梧桐灯 @ 2019-10-14 23:30:23


这不是switch的问题啊,你这样复杂度是O(n)的
by tgiwx @ 2019-10-14 23:31:05


我没记错的话,switch是从地址直接转到地址,比一个一个if要快
by WorldBest丶牛顿 @ 2019-10-14 23:38:57


@[君梦如烟](/space/show?uid=255761) 耗时 单个if < 三目运算符 < switch <多个if
by 4526_ @ 2019-10-15 06:57:55


用map
by Lacrymabre @ 2019-10-15 07:00:14


一行可以搞定的事为什么要打26行?
by MZW_BG @ 2019-10-15 07:28:56


~~不会switch~~
by lk_liang @ 2019-10-15 07:33:27


很快,比if...else if要快
by _sys @ 2019-10-15 07:41:19


@[君梦如烟](/space/show?uid=255761) 单个if和26行switch显然没有可比性吧 如果比较的话除非你写26行if else 事实上if由于跳转惩罚的原因,若没有出现if的结果,跳转到其他语句会减慢速度。解决方法是用三目运算符和switch。 当然两行的if显然更快
by 风随逐影 @ 2019-10-15 08:36:26


|