《笔试面试题—软件测试工程师.docx》由会员分享,可在线阅读,更多相关《笔试面试题—软件测试工程师.docx(4页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、笔试面试题软件测试工程师导语:yjbys我整理了笔试面试题软件测试工程师,欢迎阅读!试题1.在一个长度为n的顺序存储线性表中,向第i个元素(1in+1)之前插入一个新元素,需要从后往前依次后移几个元素?删除第i个元素时,需要从前向后前移几个元素?分析:考察线性表中顺序存储的特点。答案:n-i+1,n-i试题2.已知链表的头结点head,写一个函数把这个链表逆序。分析:考察线性表中链式存储反转算法。答案:01.voidList:reverse()02.03.list_node*p=head;04.list_node*q=p-next;05.list_node*r=NULL;06.while(q)
2、;07.r=q-next;08.q-next=p;09.p=q;10.q=r;11.12.head-next=NULL;13.head=p;14.试题3.找出单向链表中的中间结点。分析:两个指针,一个步长为1,另一个步长为2。步长为2的走到底后步长为1的正好到中间。答案:01.list_node*List:middleElement()02.03.list_node*p=head;04.list_node*q=head-next;05.while(q);06.p=p-next;07.if(q)q=q-next;08.if(q)q=q-next;09.10.试题4.怎样检查一个单向链表上能否有环
3、。分析:同样两个指针,一个步长为1,另一个步长为2,假如两个指针能相遇则有环。答案:01.list_node*List:getJoinPointer()02.03.04.if(head=NULL|head-next=NULL)returnNULL;05.list_node*one=head;06.list_node*two=head-next;07.while(one!=two)08.one=one-next;09.if(two)two=two-next;10.elsebreak;11.if(two)two=two-next;12.elsebreak;13.;14.if(one=NULL|two=NULL)returnNULL;15.returnone;16.【笔试面试题软件测试工程师】