![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
面试题
xiaoxiong5227
一个怀揣着游戏梦想的懵懂少年
展开
-
位操作实现加法 C++代码实现
#include using namespace std; int add(int a,int b) { int jw=a&b; int jg=a^b; while(jw) { int t_a=jg; int t_b=jw<<1; jw=t_a&t_b; jg=t_a^t_b; } return jg; } int main() { int a,b转载 2012-10-11 20:57:25 · 268 阅读 · 0 评论 -
最长公共子串-Needleman/Wunsch算法
本文介绍基于最长公共子串的文本比较算法——Needleman/Wunsch算法。 还是以实例说明:字符串A=kitten,字符串B=sitting 那他们的最长公共子串为ittn(注:最长公共子串不需要连续出现,但一定是出现的顺序一致),最长公共子串长度为4。 定义: LCS(A,B)表示字符串A和字符串B的最长公共子串的长度。很显然,LSC(A原创 2012-10-25 10:40:45 · 319 阅读 · 0 评论 -
文本比较算法--LD算法(C++实现,Google2103 校招最后一题)
在日常应用中,文本比较是一个比较常见的问题。文本比较算法也是一个老生常谈的话题。 文本比较的核心就是比较两个给定的文本(可以是字节流等)之间的差异。目前,主流的比较文本之间的差异主要有两大类。一类是基于编辑距离 (Edit Distance)的,例如LD算法。一类是基于最长公共子串的(Longest Common Subsequence),例如Needleman/Wunsch算法等。原创 2012-10-25 10:09:03 · 383 阅读 · 0 评论 -
struct结构体内的对齐问题
truct结构体由于包含了不同的数据类型,而数据结构类型之间存在占用空间大小的问题,比如char型占用1字节,short int占用2字节,int、long int、指针、float占用4字节、double占用8字节(windows和linux中)。但计算机系统对基本数据类型可能允许地址做出了限制,要求某种类型的对象必须是2、4或8的倍数(为了简化处理器和存储系统之间的硬件设计——可以节省至少1根原创 2012-10-22 13:32:00 · 248 阅读 · 0 评论 -
位操作实现减法 C++代码实现
int mins(int a,int b) { int jw=(~a)&b; int jg=a^b; while(jw) { int t_a=jg; int t_b=jw<<1; jw=(~t_a)&t_b; jg=t_a^t_b; } return jg; }int main() { int a,b; while(cin>>a原创 2012-10-11 20:59:27 · 194 阅读 · 0 评论