计算机常见算法面试题.docx

计算机常见算法面试题.docx

ID:62679964

大小:14.73 KB

页数:5页

时间:2021-05-16

计算机常见算法面试题.docx_第1页
计算机常见算法面试题.docx_第2页
计算机常见算法面试题.docx_第3页
计算机常见算法面试题.docx_第4页
计算机常见算法面试题.docx_第5页
资源描述:

《计算机常见算法面试题.docx》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、简介:计算机考研之家搜集的华为C语言经典面试题,来试试你的C语言水平吧。每道题都附有详细解答和讲解,很有参考价值的C语言面试题。怎么判断链表中是否有环boolCircleInList(Link*pHead){if(pHead==NULL

2、

3、pHead->next==NULL)一函数,实现删除字符串str1中含有的字符串str2.第二个就是利用一个KMP匹配算法找到str2然后删除(用链表实现的话,便捷于数组)/*雅虎笔试题(字符串操作)给定字符串A和B,输出A和B中的最大公共子串。比如A="aocdfe"B="pmcdfa"则输出"cdf"*/一个函数比较两个字符串st

4、r1和str2的大小,若相等返回0,若str1大于str2返回1,若str1小于str2返回-1intstrcmp(constchar*src,constchar*dst){intret=0;while(!(ret=*(unsignedchar*)src-*(unsignedchar*)dst)&&*dst){++src;++dst;}if(ret<0)ret=-1;elseif(ret>0)ret=1;return(ret);}3,求1000!的未尾有几个0(用素数相乘的方法来做,如72=2*2*2*3*3);求出1->1000里,能被5整除的数的个数n1,能被25整

5、除的数的个数n2,能被125整除的数的个数n3,能被625整除的数的个数n4.1000!末尾的零的个数=n1+n2+n3+n4;#include#defineNUM1000intfind5(intnum){intret=0;while(num%5==0){num/=5;ret++;returnret;}intmain(){intresult=0;}inti;for(i=5;i<=NUM;i+=5){result+=find5(i);}printf("thetotalzeronumberis%d",result);return0;}1.有双向循环链表结点定义为:str

6、uctnode{intdata;structnode*front,*next;};data有两个双向循环链表A,B,知道其头指针为:pHeadA,pHeadB,请写一函数将两链表中值相同的结点删除BOOLDeteleNode(Node*pHeader,DataTypeValue){if(pHeader==NULL)return;BOOLbRet=FALSE;Node*pNode=pHead;while(pNode!=NULL){if(pNode->data==Value){if(pNode->front==NULL){pHeader=pNode->next;pHeade

7、r->front=NULL;}else{if(pNode->next!=NULL){pNode->next->front=pNode->front;}pNode->front->next=pNode->next;}Node*pNextNode=pNode->next;deletepNode;pNode=pNextNode;bRet=TRUE;编程实现:找出两个字符串中最大公共子字符串,如"abccade","dgcadde"的最大子串为"cad"intGetCommon(char*s1,char*s2,char**r1,char**r2){intlen1=strlen(

8、s1);intlen2=strlen(s2);intmaxlen=0;for(inti=0;imaxlen){maxlen=count;*r1=s1+i;*r2=s2+j;}}}}3.编程实现:把十进制数(long型)分别以二进制和十六进制形式输出,不能使用printf系列库函数char*test3(l

9、ongnum){char*buffer=(char*)malloc(11);buffer[0]='0';buffer[1]='x';buffer[10]='';char*temp=buffer+2;for(inti=0;i<8;i++){temp[i]=(char)(num<<4*i>>28);temp[i]=temp[i]>=0temp[i]:temp[i]+16;temp[i]=temp[i]<10temp[i]+48:temp[i]+55;}returnbuffer;}输入N,打印N*N矩阵比如N=3,打印:N=4,打印:121

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。