如果遍历几千上万也不消耗运算的话,那“时间复杂度”这个概念就应该去掉了。很多公司面试新人,都会问“时间复杂度”和“空间复杂度”,如何优化排序运算,如何优化多物体碰撞。现在到你这里都不是个啥了,在你眼里都不存在这些概念,计算几千上万次跟计算1次没区别。
哪个语言遍历几十万次都会慢啊,这跟寻路是2回事兄弟,寻路是在最短的时间找出一条最合适或者最短的路径。为什么老是纠结遍历了多少格,这本来就是性能和路径的权衡,我再开个cross模式你根本一点胜算没有兄弟
最短的“运算时间”不等于最短的“物理时间”,你想要更短的“物理时间”,去找一台每秒运算万亿次的超级计算机计算出来结果更短。
还有你说的多物体碰撞,那都不属于寻路,A星也就用个最小堆,这玩意是个大学生都回吧
。。我没有禁止你用i9或者9950X来对比啊,理论条件下一样你真觉得你的很快?
上面提到的那个大死胡同,如果你全部遍历完胡同内3000格子,那么它的运算时间一定比只运算几个格子的效率低,这是避不开的。不可能计数从“0计到3000”会比从“0计算到7”高。
又来了,我说了你的地图大小上不了台面,你要不再放大10倍地图对比下你的RCA
你要比,环境,语言都一致,要不然就是不公平
我说的碰撞,没有说是寻路,只是说去一下大公司面试别人会问到,几千个物体碰撞,会涉及到查找周围物体。要快速查找到碰撞物就涉及“时间复杂度”和“空间复杂度”的概念,跟你说的寻路消耗多少“物理时间”是不同的概念。而一个程序设计的好不好也是看“时间复杂度”和“空间复杂度”,面试时提一个程序设计消耗多少“物理时间”会被人耻笑的。
经典的各类型的排序算法,效率好不好也是看“时间复杂度”,这是面试官常问的问题。不会有人问你一个排序算法消耗多少“物理时间”,你却一个劲地回答,你某个算法在服务器跑只消耗几纳秒,不被人耻笑吗
。。能不能别纠结复杂度了,现在的情况是你的RCA并没有比A星快
测试案例之前发给你了,快不快你不能从测试案例里看出来吗?
那个测试案例在我这只有10%左右的覆盖率
是的 不同语言不同机器 根本没法比较。
你知不知道我开cross模式,检测的格子能比你的RCA少1-8倍
你喜欢拿格子说事,那我cross遍历的格子更少,你还有别的招数吗
主要他说的效率不是指“时间复杂度”,而是消耗了多少“毫秒”,我只计算几个格子就找到目标,他遍历几千次却说比我的效率高,原因是他的运算耗时是“xx毫秒”。这还怎么讨论。
那你知不知道,1W次测试里面你遍历的格子可能只有几百次少于我的,宏观上看你觉得你快是吧
好看,爱看,有没有大佬指出怎么样才能公平判定
做个案例发出来,让大家检验一下。
寻路过程,寻路深度,检测格子个数这些信息都展示或打印出来,看看是什么效果,如果真的好,我对你佩服,我会接纳一切好东西的,不会故意说别人不好。
还有我提醒一下,你遍历的格子不够,在地图障碍复杂的情况下,你的路径结果会比A还要更偏,你只是还没遇到那样的地图