预览加载中,请您耐心等待几秒...
1/5
2/5
3/5
4/5
5/5

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

Tencent笔试题Tencent笔试题选择题(60) c/c++  os  linux方面的基础知识,c的Sizeof函数有好几个!程序填空(40)1.(20)4空x5 不使用额外空间,将A,B两链表的元素交叉归并2.(20)4空x5MFC 将树序列化转存在数组或链表中!1.请定义一个宏,比较两个数a、b的大小,不能使用大于、小于、if语句//这样转向定义应该不算违规吧!^_^#include"stdafx.h"#include<string.h>#include<iostream>usingnamespacestd;#defineCmp(x,y)compare(x,y)intcompare(inta,intb){    a^=(1<<31);b^=(1<<31);    inti=31;   while((i^-1)&&!((a&(1<<i))^(b&(1<<i))))    i--;    return(i^-1)?(((a>>i)&1)?1:-1):0;}int_tmain(){    intc;    c=Cmp(5,4);    cout<<c<<endl;    return0;}2.如何输出源文件的标题和目前执行行的行数(不晓得怎么搞,在等兄弟给我答案在!)3.两个数相乘,小数点后位数没有限制,请写一个高精度算法 算法提示:    //想法来自北师大一个同学给我看的另一个题目以及他的`java程序,Tencent笔试题,资料共享平台《Tencent笔试题》(https://)。    输入stringa,stringb;计算stringc=a*b;返回c;1)纪录小数点在a,b中的位置l1,l2,则需要小数点后移动位置数为l=length(a)+length(b)-l1-l2-2;2)去掉a,b中的小数点,(a,b小数点后移,使a,b变为整数)3)计算c=a*b;(要么用java的BigInterger搞,要么自己用C++写高精度数乘法,超过百万位,用FFT,我就不细说,这都预先写过就别做了)4)输出c,(注意在输出倒数第l个数时,输出一个小数点。若是输出的数少于l个,就补0)4.写一个病毒(没搞过,^_^)5.让你在100000000个浮点数中找出最大的10000个,要求时间复杂度优。//本算法使用快排,O(n*lg(n)) //最低可以找到线性算法,使用预先区域统计划分!类试于构造QuadTrees!写起来代码会长些