- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
招聘软件工程师试题
测试题
请分别说明类与对象的关系,类的层次关系。
对象的共性抽象为类 ,类的实例化就是对象. 包含与被包含的关系.
请说明栈与队列的数据结构特性,并说明在实际应用中如何用代码实现栈和队列,请写出思路。
栈(Stack)是仅限制在表的一端进行插入和删除运算的线性表,通常称插入、删除这一端为栈顶,另一端称为栈底。表中无元素时为空栈。栈的修改是按后进先出的原则进行的.
队列(Queue)也是一种运算受限的线性表,它的运算限制与栈不同,是两头都有限制,插入只能在表的一端进行(只进不出),而删除只能在表的另一端进行(只出不进),允许删除的一端称为队尾(rear),允许插入的一端称为队头 (Front) ,队列的操作原则是先进先出的.
在对数据进行排序时,有哪几种排序方法,请列举不少于2种,并写出它们的排序原理.
直接插入排序,冒泡排序,快速排序,直接选择排序,堆排序,希尔排序。
冒泡排序和选择排序是排序算法中比较简单和容易实现的算法。
冒泡排序的基本概念是:依次比较相邻的两个数,将大数放在前面,小数放在后面。即首先比较第1个和第2个数,将大数放前,小数放后。然后比较第2个数和第3个数,将大数放前,小数放后,如此继续,直至比较最后两个数,将大数放前,小数放后,此时第一趟结束,在最后的数必是所有数中的最小数。重复以上过程,仍从第一对数开始比较(因为可能由于第2个数和第3个数的交换,使得第1个数不再大于第2个数),将大数放前,小数放后,一直比较到最小数前的一对相邻数,将大数放前,小数放后,第二趟结束,在倒数第二个数中得到一个新的最小数。如此下去,直至最终完成排序。
快速排序是对冒泡排序的一种改进。它的基本思想是:通过一躺排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一不部分的所有数据都要小,然后再按次方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。
选择排序:每一趟从待排序的数据元素中选出最小(或最大)的一个元素,顺序放在已排好序的数列的最后,直到全部待排序的数据元素排完。
直接选择排序中,为了从R[1..n]中选出关键字最小的记录,必须进行n-1次比较,然后在R[2..n]中选出关键字最小的记录,又需要做n-2次比较。事实上,后面的n-2次比较中,有许多比较可能在前面的n-1次比较中已经做过,但由于前一趟排序时未保留这些比较结果,所以后一趟排序时又重复执行了这些比较操作。
堆排序可通过树形结构保存部分比较结果,可减少比较次数。
插入排序(Insertion Sort)的基本思想是:每次将一个待排序的记录,按其关键字大小插入到前面已经排好序的子文件中的适当位置,直到全部记录插入完成为止。
直接插入排序(Straight Insertion Sort):将一个记录插入到排好序的有序表中,从而得到一个新的、记录数增1的有序表。
4. 下列链式存储结构的叙述中哪一条是不正确的?
结点除自身信息外还包括指针域,因此存储密度小于顺序存储结构
逻辑上相邻的结点物理上不必邻接
可以通过计算直接确定第i个结点的存储地址
D 插入、删除运算操作方便,不必移动结点
模块内聚度越高,说明模块内各成分彼此结合的程度越
松散
紧密
无法判断
相同
内聚(Cohesion)是一个模块内部各成分之间相关联程度的度量。耦合(Coupling)是模块之间依赖程度的度量。内聚和耦合是密切相关的,与其它模块存在强耦合的模块通常意味着弱内聚,而强内聚的模块通常意味着与其它模块之间存在弱耦合。模块设计追求强内聚,弱耦合。
与引用类型有什么区别
存储保存数据的内存空间地址;值类型变量可以直接进行访问并按值传递,而引用类型
值类型变量通常容纳小容量数据,如int或bool类型;而引用类型通常引用大的对象 ADO.net/ADO(两者请选择其一)对象有哪些?分别描述一下。
其中,Connection对象主要负责连接数据库,Command对象主要负责生成并执行SQL语句, DataReader对象主要负责读取数据库中的数据,DataAdapter对象主要负责在Command对象执行完SQL语句后生成并填充 DataSet和DataTable,而DataSet对象主要负责存取和更新数据。
9. 如何理解委托?
委托是C#中新加入的一个类型,可以把它想作一个和Class类似的一种类型,和使用类相似,使用一个委托时,需要两个步骤,首先你要定义一个委托,就像是定义一个类一样;然后,你可以创建一个或多个该委托的实例。
当你需要把一个方法传送给其他方法时,可以考虑使用委托。 UDP连接和TCP连接的异同。 进程和线程分别怎么理解?
线程是进程的执行单元。当进程被初始化后,主线程就被创建了。对于绝大多数的应用程序
您可能关注的文档
- 广东省湛江第一中学等四校2016届高三上学期第一次联考化学试题(含答案).doc
- 广东省湛江市第一中学2016届高三上学期11月月考化学试题Word版含答案.docx
- 广东省肇庆市2014届高三3月第一次模拟考试数学(理)试题(版).doc
- 广东省肇庆市2015届高三第三次统一检测文综地理试题.doc
- 广东省百校2017届高三第二次联考.doc
- 广东省珠海市2015-2016学年第一学期高三摸底考试数学文试卷Word版含答案1.doc
- 广东省肇庆市2015届高三第二次模拟考试文综历史.doc
- 广东省肇庆市2015届高三第三次统一检测理综化学试题含答案.doc
- 广东省肇庆市2015届高三第二次统测英语.doc
- 广东省肇庆市2015届高中毕业班第二次模拟考试文综历史试题.doc
- 2023学年诸暨中学高三年级第二学期3月第二次模拟考试(政治)公开课教案教学设计课件资料.docx
- 运动的合成与分解(二)公开课教案教学设计课件资料.pptx
- 近五年浙江省各地图形的翻折(轴对称)原题公开课教案教学设计课件资料.doc
- 如何做教师-2019-11-13-中关村一小相关公开课教案教学设计课件资料.pptx
- 生活中的圆周运动 (水平面)正式版公开课教案教学设计课件资料.pptx
- 专题10 条件概率与全概率公式公开课教案教学设计课件资料.docx
- 金华市东阳市2019学年第二学期期末测试卷公开课教案教学设计课件资料.doc
- 5 琥珀(第二课时)【慕课堂版】公开课教案教学设计课件资料.pptx
- 项目五 打印米老鼠模型公开课教案教学设计课件资料.ppt
- (打印版)9月25日地理周练公开课教案教学设计课件资料.docx
文档评论(0)