硬件测试求职试题集合.docx

上传人:b****9 文档编号:25880595 上传时间:2023-06-16 格式:DOCX 页数:47 大小:36.55KB
下载 相关 举报
硬件测试求职试题集合.docx_第1页
第1页 / 共47页
硬件测试求职试题集合.docx_第2页
第2页 / 共47页
硬件测试求职试题集合.docx_第3页
第3页 / 共47页
硬件测试求职试题集合.docx_第4页
第4页 / 共47页
硬件测试求职试题集合.docx_第5页
第5页 / 共47页
点击查看更多>>
下载资源
资源描述

硬件测试求职试题集合.docx

《硬件测试求职试题集合.docx》由会员分享,可在线阅读,更多相关《硬件测试求职试题集合.docx(47页珍藏版)》请在冰豆网上搜索。

硬件测试求职试题集合.docx

硬件测试求职试题集合

硬件测试求职试题集合

笔试网()

简答题:

(1)何谓trie树?

试构造一棵对应关键字的trie树,请注意应该使树的深度尽可能小。

{program,programmer,programming,processor,or}

(2)事务t1、t2和t3的定义如下:

  t1:

x:

=x+1

  t2:

x:

=x*2

  t3:

x:

=3

  假设x的初值为0,若允许这三个事务并发执行,试列出所有可能的调度和相应的x值。

(3)请实现两棵树是否相等的比较,相等返回,否则返回其他值,并说明算法复杂度。

数据结构为:

typedefstruct_treenode{

charc;

treenode*leftchild;

treenode*rightchild;

}treenode;

函数接口为:

intcomptree(treenode*tree1,treenode*tree2);

注:

a、b两棵树相等当且仅当root->c==rootb-->c,而且a和b的左右子树相等或者左右互换相等。

(4)编程实现将任意的十进制整数转换成r进制数(r在2-16之间)。

(5)怎样在复杂的各种形式的网页中提取mp3下载的结构化数据?

(6)设有一个顺序表a,包含n个元素,要求写出一个将该表逆置的算法,并只允许在原表的存储空间少再加一个附加的工作单元。

(7)找出字符串a中包含的字符可以进行的所有不同组合。

例如:

abccd中,ab,ac,bc,cc,abd等都是可能的组合。

(8)请设计一个企业进销存系统的数据库表结构,需要实现基本的进销存管理,需要记录的信息包括:

供应商信息、商品信息、库存信息、客户信息、出入库信息、仓库信息等;其中,入库视为进货,出库视为销售,且企业有多个仓库;请画表格描述表结构(需要说明每个字段的字段名、字段类型、字段含义描述);

在数据库设计中应:

1.保证每个供应商、商品类别、客户、仓库等的唯一性;

2.保证供应商信息、商品信息、仓库信息、客户信息与出入库信息之间的参照完整性;

3.若有新供应商、新的商品、新的客户、新的仓库加入,保证自动生成其唯一性标识;

4.数据库设计应为以下报表需求提供支持:

(无特定说明,不需编写实现语句,而需在数据库设计中,保证这些报表可以用最多一条sql语句实现)

a)日报表:

每日进货、销售的商品种类与数目清单,包括对应的供应商信息、仓库信息等;每日企业毛利报表(销售与进货的价格差);

b)月报表:

每月来自各个供应商的商品销售情况;

c)实时报表:

i.盘点当前各仓库库存商品列表,包括商品名称、编号、库存时间等请编写实现此需求的sql语句:

数据库应用:

请撰写一系列的sql语句,描述完整的商品转库操作,即某种类的一部分商品,从某仓库中转运到另一仓库的过程中,进销存系统需要执行的一系列sql语句;并保证这一系列的sql语句的执行完整性;

(9)假定磁带的记录密度为每英寸1000个字符,每一个逻辑记录长为240个字符,块与块之间的间隙为0.5英寸,现有600个逻辑记录需要存储到磁带上,请回答下列问题:

1)在没有采用成组操作时,磁带空间的利用率是多少?

2)在采用以8个逻辑记录为一组的成组操作时,磁带空间的利用率是多少?

3)为了使磁带空间的利用率大于70%,采用记录成组操作时的块因子至少应为多少?

(10)设用输入广义表表示的字符串来创建二叉链表结构的二叉树,具体规定如下:

广义表的表名作为树的根结点,每个结点的左子树和右子树用逗号分隔,若仅有右子树,则逗号不能省略;以特殊符号‘$’表示广义表的结尾。

  

(1)若输入的字符串为a(b(c),d(e(,f),g)),画出所表示的二叉树。

  

(2)实现用上述方法创建二叉树的算法。

(11)若有一棵二叉树的存储结构为二叉链表,t指向根结点,请写出一个非递归算法判定其是否为二叉排序数。

(12)写一个程序,读入一个3×3的矩阵,输出它的转置。

(注:

转置是将原矩阵的行列互换)

(13)头文件中的ifndef/define/endif干什么用?

(14)数据库中有三个关系(基本表):

  s(学号,姓名,性别,年龄,系别)

  c(课号,课名)

  sc(学号,课号,成绩)

依据此信息用sql语句完成下面问题。

1.查询每个学生的姓名和年龄,并按年龄降序排列。

2.查询s表中姓“王”的学生的情况。

3.查询选修了“数据库原理”的学生的姓名和成绩。

4.查询与“刘平”同一系的学生情况。

(15)设有如下的三个关系模式:

  s(sno,sname,age,sex)

  sc(sno,cno,grade)

  c(cno,cname,teacher)

试写出检索学习″wang″老师讲授课程的男学生的姓名(sname)的关系代数表达式。

(16)描述派生类的内存存储方式。

(17)已知某企业各部门有许多职员,一个职员仅属于一个部门;每个职员可在多项工程中做工或负责管理,每项工程可有多个职员参加。

其中,职工有:

职工号,职工名;

  部门有:

部门号,部门名;

  工程有:

工程号,工程名;

每个职工参加某个工程有参加日期。

请完成如下设计或处理:

(1)据上述语义设计e-r模型,要求标注联系类型,可省略属性。

(2)将e-r模型转换成关系数据模型,并指出每一个关系的主键和外键(如果存在)。

(18)假定系统有三个并发进程read,move和print共享缓冲器b1和b2。

进程read负责从输入设备上读信息,每读出一个记录后把它存放到缓冲器b1中。

进程move从缓冲器b1中取出一记录,加工后存入缓冲器b2。

进程print将b2中的记录取出打印输出。

缓冲器b1和b2每次只能存放一个记录。

要求三个进程协调完成任务,使打印出来的与读入的记录的个数,次序完全一样。

  请用pv操作,写出它们的并发程序。

(19)intf(n)

  intn;

  {if(n>0)returnn*f(n-1);

  elsereturn1;

  }

  main()

  {intk;

  k=f(5);

  printf(”k=f(5)=%d\n”,k);

  }

  程序运行结果是:

(20)输入一字符串,检查是否回文(回文是指正反序相同,如,level),若是则输出“yes”,否则输出“no”。

(21)请判断下述二叉搜索树的结点删除算法是否正确。

  (a)如果正确,请给出一个简单实例,演示算法运行步骤;

  (b)如果不正确,请指出错误之处,并给出改正后的算法。

如果只是局部修改,建议大家只具体给出所修改部分(例如,第x行-第y行代码修改为)

  template/*第1行*/

  voidbinarysearchtree:

:

deletenode(/*第2行*/

  binarytreenode*pointer){/*第3行*/

  if(pointer==null)/*第4行*/

  return;/*第5行*/

  binarytreenode*temppointer=null;/*第6行*/

  binarytreenode*parent=getparent(root,pointer);/*第7行*/

  if(pointer->leftchild()==null)/*第8行*/

  {/*第9行*/

  if(parent->leftchild()==pointer)/*第10行*/

  parent->left=pointer->rightchild();/*第11行*/

  else/*第12行*/

  parent->right=pointer->rightchild();/*第13行*/

  deletepointer;/*第14行*/

  pointer=null;/*第15行*/

  return;/*第16行*/

  }//endif/*第17行*/

  temppointer=pointer->rightchild();/*第18行*/

  while(temppointer->rightchild()!

=null)/*第19行*/

  temppointer=temppointer->rightchild();/*第20行*/

  temppointer->right=pointer->rightchild();/*第21行*/

  if(parent==null)/*第22行*/

  root=pointer->leftchild();/*第23行*/

  elseif(parent->leftchild()==pointer)/*第24行*/

  parent->left=pointer->leftchild();/*第25行*/

  else/*第26行*/

  parent->right=pointer->leftchild();/*第27行*/

  return;/*第28行*/

  }/*第29行*/

(22)操作系统中进程调度策略有哪几种?

(23)设双链表结点结构为llinkdatarlink,请设计算法将其中p所指结点与其rlink所指结点位置互换的算法。

(24)设计一函数,求整数区间[a,b]和[c,d]的交集。

(25)写一个病毒。

(26)某采用页式存储管理的系统,接收了一个共11页的作业,作业执行时依次访问的页为:

1、2、3、4、1、2、6、5、2、1、2、7、3、4、5、5、4、7、1。

若把开始四页先装入主存且维持四个页在主存工作,当分别用先进先出(fifo)调度算法和最近最少用(lru)调度算法时,作业执行过程中会产生多少次缺页中断?

写出依次产生缺页中断后淘汰的页。

(27)我们需要编写一个图形相关的应用程序,需要处理大量图形(shape)信息,图形有矩形(rectangle),正方形(square),圆形(circle)等种类,应用:

需要计算这些图形的面积,并且可能需要在某个设备上进行显示(使用在标准输出上打印信息的方式做为示意)。

a)请用面向对象的方法对以上应用进行设计,编写可能需要的类

b)请给出实现以上应用功能的示例性代码,从某处获取图形信息,并且进行计算和绘制

c)如果你的square继承自rectangle,请给出理由,如果不是,请给出理由,并且请比较两种方式的优劣

d)请问你所编写的类,在如下代码中会有何表现,请解释

voidtest_rectangle_area(rectangle&r)

{

r.set_width(10);

r.set_height(15);

assert(r.area()==150);

}

(28)描述一个数学模型。

解决下面的问题:

给定任务t1、t2、t3……tn,它们分别需要t1、t2、……tn的时间完成。

给定一个约束集合,其中条件如:

tj开始之前ti必须完成。

求出完成任务的最少时间。

(29)设有关系模式:

emp(职工号,姓名,工资,部门号),试用sql语句创建一个工资总额超过20万元(含20万元)的各部门工资总额视图v-sal。

(30)用<<,>>,|,&实现一个word(2个字节)的高低位交换!

!

(31)现在普通关系数据库用得数据结构是什么类型的数据结构?

(32)在有向图中判别是否存在回路有那些方法,是说明其中两种方法的基本思想。

(33)编制一个完成两个数的四则运算程序。

如:

用户输入34+56则输出结果90.00。

要求运算结果保留两位小数,用户输入时一次将两个数和操作符输入。

(34)正向最大匹配分词,怎么做最快?

(35)简述顺序存储队列的队列满和空的条件?

(36)简述堆栈与队列的区别。

(37)编写一个函数,要求输入年月日时分秒,输出该年月日时分秒的下一秒。

如输入2004年12月31日23时59分59秒,则输出2005年1月1日0时0分0秒。

(38)x博士是一个研究儿童智力开发方法的科学家,他为幼儿教育领域做出了许多贡献。

最近,x博士正在研究一种适合儿童的游戏,用以辅助发展儿童的观察力、注意力和思维能力。

经过连日的构思,x博士终于设计出了一种游戏:

彩球游戏。

  彩球游戏是一种单人参与的游戏,游戏首先给出一串由许多不同颜色的小球组成的小球序列,以及一个整数参数m(m≥2)。

一段连续的具有相同颜色的小球序列称为连续同色序列。

小孩,即游戏参与者,每次可以向任意一段连续同色序列插入一个同色小球,使该序列的长度加一。

当一段连续同色序列在插入一个同色小球后其长度达到m时,该序列就会爆炸消失,然后原序列两边的其余小球会重新连成一串,如果两段相同颜色的连续同色序列在此时连接在一起,它们就会合并形成一段新的连续同色序列。

如果新形成的连续同色序列长度达到m,这段序列也会爆炸消失,然后重复上述过程,直到没有新的长度达到m的连续同色序列出现为止。

游戏的目标很简单,就是插入尽量少的小球,使得所有小球都爆炸消失掉。

  通过长时间的游戏和不断提高游戏水平,这个游戏可以很好地开发儿童的观察力、注意力和思维能力。

但是x博士仍然面临着一个困难的问题,他还需要设计出一个游戏演示ai程序,可以以最优的方式(即插入的小球数量最小)进行游戏,用于游戏教学,或者在游戏中对小孩给出提示。

x博士并不擅长此类程序,因而他无法完成这个任务,你可以帮助他吗?

(39)什么是多值依赖中的数据依赖?

举例说明。

(40)有一个unsignedlong型整数,先要分别将其前2个字节和后2个字节用为两个unsignedint型整数输出(设一个int型数据占2个字节),试编写一函数partition实现上述要求。

要求在主函数输入该long型整数,在函数partition中输出结果。

(41)为建立一个具有n份档案的档案库需要设计如下数据结构:

所有档案存储在一个动态存储的双向循环链表中,每份档案占用一个地址连续的存储块成为该链表中的一个结点,整个链表为一个链接顺序文件,取名为dossier(档案),同时分别建立两个索引,其中一个为稠密索引,取名为dense,另一个是表长为m的杂凑表索引,取名为bucket,该杂凑表采用链地址法处理冲突。

上述两种索引中都分别存储在每一份档案的存储地址。

1.请分别画出dossier、dense、bucket的结构示意图。

2.分别设计出dossier、dense、bucket的数据结点的结构,即为了满足档案的插入、删除、查找的操作,每个结点必要的数据项的名称及其作用。

3.针对上述结构,用简明的文字分别说明所有可能的查找方法(查找路径)。

4.分别给出每一种查找方法在查找成功时的平均查找长度。

(42)如果让你来实现数据库的等值连接,请你说出你的算法或者思路。

(43)设有如下3个关系模式:

  职工emp(职工号,姓名,性别,出生年月)

  工程prj(工程编号,工程名称,预算)

  报酬sal(职工号,工程编号,工资)

用sql语句,写出以下问题的sql;

  1.按照职工号统计每个职工的总收入。

  2.创建一个查询职工承担工程的视图vps,vps包括职工号、姓名、工程名称和工资属性。

  3.将预算额达到100万元以上工程的职工工资提高10%。

(44)已知二维数组a[1:

n,1:

n],请写一空间复杂度为o

(1)的算法,该算法将数组顺时针方向旋转90度(即把第1行变成第n列,第2行变成第n-1列,第3行变成第n-2列,…,第n行变成第1列)。

(45)执行下述程序的输出结果是________________。

#include

intw=3

main()

{

intw=10;

printf("%d\n",fun(5)*w);

}

intfun(intk)

}

if(k==0)

return(w);

return(fun(k-1)*k);

}

(46)独占设备采用哪种分配方式?

(47)在页式虚存管理系统中,设页面大小为26,页表内容如下,现访问虚地址:

(245)8和(126)8,问是否会发生页故障中断?

若会则简述故障中断的处理过程,否则将虚地址变换成相应的物理地址。

(48)main函数执行以前,还会执行什么代码?

(49)写一语句实现x是否为2的若干次幂的判断。

(50)列举磁盘移臂调度四种常用算法。

(51)c语言同意一些令人震惊的结构,下面的结构是合法的吗,如果是它做些什么?

inta=5,b=7,c;

c=a+++b;

(52)以下程序的功能是在输入的一组正整数中找出其中的最大者,若输入的数值为0,程序结束。

main()

{inta,max=0;

  scanf(”%d”&a);

  while(a)

  {if(________)max=a;

  scanf(“%d”,&a);}

  printf(“%d”,max);

}

将空白处的代码补充完整。

(53)写出输出结果:

charstr1[]="abc";

charstr2[]="abc";

constcharstr3[]="abc";

constcharstr4[]="abc";

constchar*str5="abc";

constchar*str6="abc";

char*str7="abc";

char*str8="abc";

cout<<(str1==str2)<

cout<<(str3==str4)<

cout<<(str5==str6)<

cout<<(str7==str8)<

(54)x=x+1,x+=1,x++,为这三个语句的效率排序。

并说明为什么。

(55)设有两个关系模式:

s(sno,sname,sex,age),其属性含义依次为学号、姓名、性别、年龄;

sc(sno,cname,grade),其属性含义依次为学号、课程名、分数。

试根据下列sql语句写出等价的关系代数表达式。

  selectsname

  forms

  wheresnoin

  (selectsno

  fromsc

  wheregradebetween70and80)

(56)简述存储管理的功能。

(57)设有两个关系模式:

s(sno,sname,sex,age),其属性含义依次为学号、姓名、性别、年龄;

sc(sno,cname,grade),其属性含义依次为学号、课程名、分数。

试根据下列sql语句写出等价的关系代数表达式。

  selectsname

  forms

  wheresnoin

  (selectsno

  fromsc

  wheregradebetween70and80)

(58)#include

  voidmain()

  {intc;

  while((c=getchar())!

=′\n′)

  switch(c-′2′)

  {case0:

  case1:

putchar(c+4);break;

  case2:

putchar(c+4);break;

  case3:

putchar(c+3);break;

  default:

putchar(c+2);break;

  }

  printf(″\n″);

  }

  运行时输入:

2473,输出结果:

(59)给出ccdos中涉及汉字编码转换的模块,并简述它们的功能。

(60)employee(id,name,manager,dept,salary)分别为编号,姓名,是否是经理,所在部门,薪水。

写一个sql查出所有部门薪水最高的员工,并分析你的sql,还能更快吗?

(61)常用的关键查询应该使用哪种索引,稠密,还是稀疏索引?

为什么?

(62)简述数据库一致性状态的概念。

(63)简述树形目录结构的优点。

(64)简述“运行记录优先原则”。

(65)用预处理指令#define声明一个常数,用以表明1年中有多少秒(忽略闰年问题)

(66)请实现两棵树是否相等的比较,相等返回,否则返回其他值,并说明算法复杂度。

数据结构为:

typedefstruct_treenode{

charc;

treenode*leftchild;

treenode*rightchild;

}treenode;

函数接口为:

intcomptree(treenode*tree1,treenode*tree2);

注:

a、b两棵树相等当且仅当root->c==rootb-->c,而且a和b的左右子树相等或者左右互换相等。

(67)一列数的规则如下:

1、1、2、3、5、8、13、21、34.求第30位数是多少,用递归算法实现。

(68)简述树形目录结构的优点。

(69)简述故障恢复中利用日志文件恢复事务的过程。

(70)双向链表的删除结点。

来源:

笔试网;面试网

选择题:

(1)缓冲技术中的缓冲池在(  )中。

a.主存

b.外存

c.rom

d.寄存器

(2)用isam和vsam组织文件属于

a.顺序文件

b.索引文件

c.散列文件

d.都不是

(3)若定义了intm,n=0,*p1=&m;,则下列与m=n;等价的正确语句是

a.m=*p1;

b.*p1=&*n;

c.*&p1=&*n;

d.*p1=*&n;

(4)属于c语言基本数据类型的是

a.指针型

b.无符号整型

c.数组型

d.结构型

(5)事务日志的用途是

a.事务处理

b.完整性约束

c.数据恢复

d.安全性控制

(6)有10个顶点的有向完全图应具有

a.20条弧

b.50条弧

c.90条弧

d.100条弧

(7)在关系数

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > PPT模板 > 其它模板

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1