曾在使用Win0系统进行数据交换过程中发现,网上邻居上怎么找都找不着其他电脑,为何呢?也是用了很多办法,一次次失败后最后终于解决了,原来在很多优化/安全软件“整理”过的电脑中,有他们认为危险但实际非常重要的设置被强行关闭了。接下来我们看看怎么处理。
先参考下面几张图设置一波
. . .
曾在使用Win0系统进行数据交换过程中发现,网上邻居上怎么找都找不着其他电脑,为何呢?也是用了很多办法,一次次失败后最后终于解决了,原来在很多优化/安全软件“整理”过的电脑中,有他们认为危险但实际非常重要的设置被强行关闭了。接下来我们看看怎么处理。
先参考下面几张图设置一波
. . .
基于比较的排序算法复杂度的理论下界为 O(nlog n),同时指出了:
每一次判定 a < b ,都相当于回答了一次「是否问题」。按照已有的知识,若要尽可能快地完成排序,就要让每一次大小判断的结果落在两种答案之一的概率接近;若不然,则这次比较带来的信息量较小,也就需要更多次的比较来完成排序。
此篇建立在这些知识的基础上,首先探讨以下三个问题,而后引出号称「在所有情况下,都能较快完成排序任务的内省式排序(Introspective Sort)」:
堆排序是渐进最优的比较排序算法,达到了O(nlgn)这一下界,而快排有一定的可能性会产生最坏划分,时间复杂度可能为O(n^2),那为什么快排在实际使用中通常优于堆排序?
. . .
《C++ 编程思想》第 15 章 (第 300 页) 说明了原因:
模板定义很特殊。由 template<…> 处理的任何东西都意味着编译器在当时不为它分配存储空间,它一直处于等待状态直到被一个模板实例告知。在编译器和连接器的某一处,
有一机制能去掉指定模板的多重定义。所以为了容易使用,几乎总是在头文件中放置全部的模板声明和定义。
上面这段话的意思就是说,只有模板实例化时,编译器才会得知 T 实参是什么。编译器在处理模板实例化时,不仅仅要看到模板的定义式,还需要模版的实现体。
. . .
It’s like JSON.
but fast and small.
MessagePack is an efficient binary serialization format. It lets you exchange data among multiple languages like JSON. But it’s faster and smaller. Small integers are encoded into a single byte, and typical short strings require only one extra byte in addition to the strings themselves.
msgpack 比 json 模块序列化速度更快,所得到的数据体积更小
It’s like JSON,but fast and small
msgpack 用起来像 json,但是却比 json 快,并且序列化以后的数据长度更小,言外之意,使用 msgpack 不仅序列化和反序列化的速度快,数据传输量也比 json 格式小,msgpack 同样支持多种语言。
. . .