错题集锦(一)
标签(空格分隔): 找工作
静态动态链接库
静态链接库的优点
- 代码装载速度快,执行速度比动态链接库略快;
- 只需保证在开发者的计算机中有正确的.lib文件,在意位二进制形式发布程序时不需要考虑在用户的计算机上是否存在.lib文件及版本问题;
动态链接库的优点
- 节省内存并减少页面交换;
- DLL文件与EXE文件独立,只要输出接口不变,更换DLL文件不会对EXE文件造成任何影响,极大的提高了可扩展性和可维护性;
- 不同编程语言编写的程序只要按照函数调用约定就可以调用同一个DLL函数;
- 适用于大规模的软件开发,是开发过程独立,耦合度小,便于不同开发者和开发组织之间进行开发和测试。
不足
- 静态链接生成的可执行文件体积较大,包含相同的公共代码,浪费;
- 使用动态链接库的应用程序,它所依赖的DLL模块也要存在。速度比静态链接慢。存在版本问题。
n个数选出最大m个数(3 < m < n)的最小算法复杂度
相当于topk问题,其最小的算法复杂度为:O(nlogm)
策略一: 将n个数排序,排序后的前k个数就是最大的k个数,这样算法复杂度最好为O(nlogn);
策略二: 使用快排的patition思想,基于数组的第k大的数来调整,将比第k个数小的都放在左边,比第k个大的数都放在右边,这样调整后,位于数组右边的k个数就是最大的k个数,这样的算法复杂度为O(n);
策略三: 先创建一个大小为m的最小堆,接下来每次从剩下的n-m个数中读入一个数,如果这个数比最小堆的堆顶元素大,则替换堆顶圆度并调整堆,这样的算法复杂度为O(nlogm).
读取磁盘上多个顺序数据块的效率最高?
- 中断控制方式以字节为单位;
- DMA控制方式以一个连续的数据块为单位;
- 通道控制方式是DMA控制方式的扩展,以一组数据块为单位,即可以连续读取多个数据块。
big-endian & little-endian
IBM的PowerPC是big-endian字节序列,是指大端模式 -- 高地址存储数据的低字节;
Intel的X86是little-endian字节序列,是指小段模式 -- 低地址存储数据的低字节。
TCP/IP建立过程的三次握手
- 第一次握手:客户端向服务器端发送SYN包(syn = 1, seq = x),进入SYN_SEND状态,等待服务器确认;
- 第二次握手:服务器收到SYN包,确认SYN,此时(syn = 1, ACK = 1, seq = y, ack = x + 1),服务器进入SYN_RCVD状态;
- 第三次握手:客户端收到SYN包,发送(ACK = 1, seq = x+1, ack = y+1),双方进入ESTABLISHED状态。
C指针相关
1.如题:
int * pint = 0; //将pint指针指向0地址处,指针类型为int型
pint += 6; //int型每次加1相当于移动四个字节
cout << pint << endl;
以上程序输入结果为:4*6 = 24
抽样总体与样本
总体是指考察的全体对象;
个体是指总体中的每一个考察对象;
样本是指总体中所抽取的一部分个体;
-- 所以,如下描述:想了解上海市小学生的身高,需要抽取500个样本,这项调查的样本是:从中抽取的500名小学生的身高;总体是上海市全部小学生的身高;个体是上海市每个小学生的身高。
数据的左偏、右偏
“偏”可以理解为哪边的数据出现的比较少,左偏就是左边的数据比较少,众数等出现在均值的右边。
基尼系数和熵的定义
熵:(H(x) = -sum p(x)log p(x))
基尼系数:(Gini(p) = sum p * (1-p))
一元线性回归相关
相关假设:
- 随机误差项是一个期望值或平均值为0的随机变量;
- 对于解释变量的所有观测值,随机误差项具有相同的方差;
- 随机误差项彼此不相关;
- 解释变量之间不存在精确的线性关系,即解释变量的样本观测值矩阵是满秩矩阵;
- 随机误差项服从正态分布。
- 违背以上基本假设的计量经济学模型还是可以估计的,只是不能使用普通最小二乘法进行估计。(导致参数估计值虽然是无偏的,但不是最小方差线性无偏估计);
- 杜宾-瓦特森(DW)健谈,是统计分析中常用的一种检验序列一阶自相关方法。(序列相关性)
多重共线性:
多重共线性(Multicollinearity)是指线性回归模型中的解释变量之间存在精确相关关系或高度相关关系而使模型失真或难以准确估计。
导致:
- 完全共线性下参数估计量不存在;
- 近似共线性下OLS估计量失效;
- 多重共线性使参数估计的方差增大;
相关系数
-
Pearson相关系数:用于度量两个变量X和Y之间的线性相关性。
( ho_{X,Y} = frac{cov(X,Y)}{sigma_{X}sigma_{Y}}) -
Spearman相关系数:衡量两个变量的依赖性的非参数指标。
( ho = frac{sum_{i}(x_{i} - ar{x})(y_{i} - ar{y})}{sqrt{sum_{i}(x_{i} - ar{x})^{2}sum_{i}(y_{i} - ar{y})^{2}}})
当数据满足连续数据、正态分布,线性关系时用Pearson相关系数最合适;
但当其中任何一个条件不满足时,应该使用Spearman相关系数;
两个定序数据之间也应该使用Spearman相关性系数。