摘要:
A*搜索算法,俗称A星算法。这是一种在图形平面上,有多个节点的路径,求出最低通过成本的算法。常用于游戏中的NPC的移动计算,或在线游戏的BOT的移动计算上。该算法像Dijkstra算法一样,可以找到一条最短路径;也像BFS一样,进行启发式的搜索。在此算法中,如果以 g(n)表示从起点到任意顶点n的实... 阅读全文
摘要:
只会写递归的,应该学学非递归的。 也是O(lgn)。比如要计算$a^b$,把b写成二进制,假设$b=11_{(10)}=1011_{(2)}=2^3+2^1+2^0$;所以$a^{11}=a^{2^3+2^1+2^0}=a^{2^3}*a^{2^3}*a^{2^0}$。这样我也就可以把每一位的乘积项... 阅读全文
摘要:
静态库在程序编译时会被连接到目标代码中,程序运行时将不再需要该静态库。编译之后程序文件大,但加载快,隔离性也好。动态库在程序编译时并不会被连接到目标代码中,而是在程序运行是才被载入,因此在程序运行时还需要动态库存在。多个应用程序可以使用同一个动态库,启动多个应用程序的时候,只需要将动态库加载到内存一... 阅读全文
摘要:
The geometric median of a discrete set of sample points in a Euclidean space is the point minimizing the sum of distances to the sample points. This g... 阅读全文
摘要:
1.一个有10亿条记录的文本文件,已按照关键字排好序存储,设计算法,可以快速的从文件中查找指定关键字的记录。$10亿=10^9\approx2^{30}$,每行记录如果是1kB的话,总共是1TB。将文件分割成1000份,每份1G,load进内存作二分查找即可。2. 设计一个分布式爬虫系统。配置参数:... 阅读全文
摘要:
1. 一种字母游戏这样的给定四个位置 _,_,_,_然后每个位置可以选5个candidates,然后问这些candidates最多可以组成多少个有效的词,字典是给定的。 比如,如果字典是 [cake, bike, fake]我们可以这样选candidates第一个位置可以选 b,c,f,e,d第二个 阅读全文
摘要:
设计一个长连接手机云推送服务。要求:1. 稳定包括两个部分一个是服务器端的稳定性,一个是手机端的稳定性。服务端稳定性,因为使用长连接方案,对服务器的开销和要求很大,推送方案对服务器开发要求很高,海量线程连接下的服务器稳定性是非常具有挑战性的。一般的评判标准包括:同时在线时峰值 (一般按照百万并发连接... 阅读全文
摘要:
1. 在一个m*n二维数组中,每一行都按照从左到右的递增顺排序,每一列都按照从上到下的顺序排序,请完成一个函数,输入这样一个二维数组和一个整数,判断数组中是否含有该整数。1 2 8 92 4 9 124 7 9 126 8 11 15杨氏矩阵。这题有更好的做法吗?O(m+n)是最好的吗?网上说的分治... 阅读全文
摘要:
memcpy的原型:SYNOPSIS #include void *memcpy(void *dest, const void *src, size_t n);DESCRIPTION The memcpy() function copies n bytes fr... 阅读全文
摘要:
static变量(1)static全局变量与普通的全局变量有什么区别?答:全局变量的说明之前再加以static 就构成了静态的全局变量。全局变量本身就是静态存储方式,静态全局变量当然也是静态存储方式。这两者在存储方式上并无不同。这两者的区别虽在于非静态全局变量的作用域是整个源程序,当一个源程序由多个... 阅读全文