分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow
也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!
本来我是想重新编辑《一个借鉴现代OS的MMU的排序算法》这篇文章的,但想来新的主题还是另起一篇为好。
首先要说明的是,上文中的那个算法的代码是有缺陷的,比如如果有重复的数字,那么该实现将会冲掉重复的数据,正确的做法应该是在256叉树的叶子节点维护一个链表,重复的数字全部链接到该链表中。但由于我不是很会编程,不晓得一些现成的数据结构所在的库是怎么一种用法,实现这个可能需要重新做起,就算了,大致知道个意思就好了。
另外,更加重要的是,这个算法其实是在执行一种插入排序,和标准的插入排序不同的是,该算法会一次性把一个数字插入到它应该在的位置,时间复杂度为O(1)O(1)看不出二者的区别,但是从细节上,你会发现这条直线还有个参数,这正是很多人所忽略的。参数由什么决定?参数由约束决定!
在本文叙述的场景中,如果待排序的数据分布很密集,那么显然这个算法是很好的选择,如果不是,那就只能自行权衡了。
同样的道理,快速排序非常快并不仅仅因为它叫做快速排序,和它的时间复杂度一样的算法多得是,但在统计意义上就是没它优秀,所以大O并不能代表算法的优劣!
昨天发烧,但今天就奇迹般好了,没有吃任何药物,一度怀疑被感染了流感,或者是因为这么冷的天穿短袖冻感冒了,但马上就发现不是那回事,差点就被他们忽悠了,生活在众人之间,就要被众人的言论指使,然而我偏不,事后证明我是对的…不管怎样吧,不要听别人胡说,有可能95%的人说的都是错了,他们一个又一个都是听了别人错误的结论而已。要自己亲自试一下才知道。我自己可以在冬天穿短袖,所以我就知道即便我发烧,也一定不是因为被冻到了,随便别人怎么说,在我看来都是胡说。