精华内容
下载资源
问答
  • 程序员面试宝典——助你拿到好offer

    万人学习 2019-10-11 10:37:07
    鉴于此,我总结自己过往求职经历和做面试官的经验,设计了这个课程,分四篇介绍如何系统准备场面试,有效提升求职成功。 1. 定位篇,介绍判断何时跳槽的方法、澄清跳槽原因、你想要什么、盘点核心资源、寻找...
  • 2020年软考考试成绩已出,大家讨论的事无非是合格标准公布时间、成绩复查还有通过率等问题,今天我们主要来说说通过率! 官方是不会公布全国通过率的,而且全国的参考人数和通过人数也不是每个省份都会公布的,所以...

    2020年软考考试成绩已出,大家讨论的事无非是合格标准公布时间、成绩复查还有通过率等问题,今天我们主要来说说通过率!

    官方是不会公布全国通过率的,而且全国的参考人数和通过人数也不是每个省份都会公布的,所以没办法进行估算!但部分地区还是会有相关数据统计!我们可以从这些地区大致预测下全国通过率是多少。

    比如镇江人社局官网2020年11月9日发布的《2020年全国计算机软考镇江考区正式开考》中提到,2016至2019年镇江软考报名人数1440人,参考人数980人,资格证书取得人数326人,通过率33.27%,其中初级37人,中级232人,高级57人。

    比如重庆软考办官网曾发布过《重庆2018-2019年软考通过率统计分析表》如下:

    1. 2019年上半年软考通过的结构情况,报考人数5330人,通过人数1322人,平均通过率24.80%。其中通过率最高的是信息处理技术员,通过率58.9%;通过率最低的是数据库系统工程师,通过率13.77%。具体通过率如下:
      在这里插入图片描述

    2. 2018年下半年软考通过的结构情况,报考人数4187人,通过人数923人,平均通过率22.04%。其中通过率最高的是信息处理技术员,通过率50.47%;通过率最低的是网络规划设计师,通过率7.58%。具体通过率如下:
      在这里插入图片描述

    3. 2018年上半年软考通过的结构情况,报考人数3436人,通过人数749人,平均通过率21.80%。其中通过率最高的是信息处理技术员,通过率69.57%;通过率最低的是信息安全工程师,通过率11.48%。具体通过率如下:
      在这里插入图片描述

    虽然从个别地区我们无法得知全国通过率是多少,但是可以大致预估软考的通过率在25%左右!为什么通过率低?

    简单来说有3点:

    1、报名没有门槛,没有学历、专业、年限等限制,每年报名的大多数人都是零基础。

    2、软考本身还是有一定的难度,看看教材的厚度就知道了,如果没有充足的准备是很难通过的。

    3、软考成绩管理方法是必须一次性全部科目通过才算合格,单科成绩不保留。

    所以,如果你下定决心要考这个证书,且自身是零基础、工作忙、自学能力差,那么最好还是早点开始备考!不打无准备之仗。

    2021年软考备考交流小组

    展开全文
  • 2018山西专升本数据结构知识点总结

    万次阅读 多人点赞 2018-06-29 19:41:36
    2018山西专升本数据结构知识点总结

    概论

    名词解释:

    数据结构:是相互之间存在一种或多种特定关系的数据元素的集合,是计算机存储和组织数据的方式,它分为三个方面,即数据的逻辑结构,数据的物理结构,数据的操作.

    数据项:是数据不可分割的最小单位,用它可以识别一个或一组数据,一个数据元素可由若干数据项组成.

    数据元素(记录):是数据的基本单位,在计算机程序中通常作为一个整体进行考虑和处理,一个数据元素可由若干数据项组成.

    数据对象:是性质相同的数据元素的集合,是数据的一个子集.

    数据:是对客观事物的符号表示,在计算机科学中是指所有能输入到计算机中并被计算机程序处理的符号的总称,是计算机化的信息.

    数据类型:是一个值的集合以及定义在这个值集上的一组操作,可分为原子类型结构类型.

    抽象数据类型:是基于一类逻辑关系的数据类型以及定义在这个类型之上的一组操作.

    逻辑结构:是数据元素之间逻辑关系的描述.

    物理结构(存储结构):是指数据的逻辑结构在计算机中的映像(又称表示),即数据结构在计算机中的存储方法.

    算法:是对特定问题求解步骤的一种描述,它是指令的有限序列,其中每一条指令表示一个或多个操作.

    时间复杂度:算法执行所需时间的量度.

    空间复杂度:算法执行所需存储空间的量度.

    存储密度:指结点数据本身所占存储量和整个结构所占存储量之比.

    填空题:

    程序设计的一些基本原则:分解.抽象信息隐蔽.

    根据数据元素之间关系的不同特性,有四类基本的数据结构:集合结构,线性结构,树型结构,图形结构(网状结构).

    数据的存储结构有:顺序存储结构.链式(链接)存储结构.索引存储结构,散列存储结构.常用的两种存储结构:顺序存储结构链式存储结构.

    算法的五个特性:确定性.有穷性.可行性.输入输出.(可以有零个或多个数据输入,但必须至少有一个输出数据)

    算法设计的要求:正确性,可读性,稳健性,高效率低存储量.

    沃思公式:程序=算法+数据结构.

    (算法分析)衡量算法的两个标准:时间复杂度空间复杂度.

    一个算法的设计取决于所选的逻辑结构.

    一个算法的实现取决于所选的存储结构.

    结构化程序设计思想的要求:自顶向下.逐步细化.模块化设计.结构化编程.

    简答题:

    顺序存储结构的特点?(顺序存储和链式存储的优缺点)

    1.结点中只存放数据元素本身的信息,无附加内容.

    2.可直接存取数据元素.

    3.存取操作速度较快.

    4.插入.删除数据元素时,由于需要保持数据元素之间的逻辑关系,必须大量移动元素,因此实现起来较慢.

    5.顺序存储是一种静态结构,存储密度大,空间利用率低,预分配空间大小难以确定.

    链式存储结构的特点?(顺序存储和链式存储的优缺点)

    1.结点中除存放数据元素本身的信息外,还需存放附加的指针.

    2.不能直接存取数据元素,需顺链查找,存取速度较慢.

    3.插入.删除元素时不必移动其他元素,速度较快.

    4.链式存储是一种动态存储结构,空间利用率高,存储密度小,不存在预分配空间问题.

    线性结构与非线性结构的特点(或差异)?

    线性结构的特点是:除第一个元素和最后一个元素外,每个数据元素都有唯一的前驱和唯一的后继,第一个元素没有前驱,最后一个元素没有后继,关系是一对一的.

    非线性结构的特点是:表示结点间关系的前驱后继不具有唯一性,结点间是一对多或多对多的关系.

    逻辑结构与物理结构的区别和联系?

    1.数据的物理结构也称为存储结构.

    2.数据的逻辑结构仅考虑数据之间的逻辑关系.

    3.数据的物理结构是数据的逻辑结构在计算机中的映像.

    4.数据的逻辑结构独立于数据的存储介质.

    数据结构与数据类型的区别和联系?

    数据结构是相互之间存在一种或多种特定关系的数据元素的集合,是计算机存储和组织数据的方式,它分为三个方面,即数据的逻辑结构,数据的物理结构,数据的操作.它偏向于逻辑方面,而数据类型是一个值的集合以及定义在这个值集上的一组操作,可分为原子类型和结构类型.它偏向于物理方面.

    线性表

    名词解释:

    线性表:是最常用,最简单的一种数据结构,一个线性表是n个数据元素的有限序列,除首尾元素外,每个元素有唯一的前驱和唯一的后继.

    顺序表:采用顺序存储结构的线性表通常称为顺序表.

    链表:采用链式存储结构的线性表通常称为链表.

    结点:由数据元素和指示其后继结点地址的信息组成的存储映像称为结点.

    表长:表中元素的个数称为表的表长.

    循环链表:是另一种形式的链式存储结构,它的特点是表中最后一个结点的指针域指向头结点,整个链表形成一个环.

    双链表:采用链式存储结构的线性表,每个结点除一个数据域外,还有两个指针域,其一指向直接前驱,另一指向直接后继.

    静态单链表:是利用一块连续的空间,按链表的存储方式组织数据,按顺序存储结构分配空间,所构成的一种链表.

    头指针:是指向链表表头结点的指针,只要链表存在,该指针始终不会改变,单链表由头指针唯一确定,因此单链表可以用头指针的名字来命名.

    头结点:在链表的开始结点之前附加的一个结点,是链表的表头,当链表不空时,其内的指针指向链表的第一个结点,当链表是空链表是,该指针为空指针.

    填空题:

    线性表的两种基本的存储结构:顺序存储结构链式存储结构.

    实现角度看,链表可分为静态链表动态链表.

    链接方式的角度看,链表可分为单链表,循环链表,双链表.

    添加哨兵可以保持首指针的稳定性,方便表示空表.

    一元多项式的表示和相加可以使用链表实现.

    简答题:

    顺序表的优缺点?

    优点:    1.无需为表示结点间的逻辑关系而增加额外的存储空间,存储密度大.

                2.可随机存取表中的任一元素,查找方便.

    缺点:    1.插入,删除运算不方便,须移动大量元素,效率较低.

                2.存在预分配空间问题.

    链表的优缺点?

    优点:    1.插入,删除操作很方便.

                2.空间利用率高.

    缺点:    1.查找不方便,需顺链查找

                2.存储密度小.

    顺序表和链表的区别和联系及适用范围?

    顺序表:    内存中地址连续

                   长度一般不可变更

                   支持随机查找,可在O(1)内查找元素

                   适用于需要大量访问元素的,而少量增删元素的程序.

    链表:        内存中地址连续或非连续都可以

                    长度可实时变化

                    不支持随机查找,查找元素的时间复杂度为O(n)

                    适用于需要大量增删元素,而对访问元素几乎无要求的程序.

    头指针和头结点的作用?

    1.头指针是指向链表表头结点的指针,只要链表存在,该指针就不会变化,已知该指针便已知该链表.

    2.头结点是在链表的开始结点之前夫妇家的一个结点,当链表是空链表时,该指针为空指针,因此空表和非空表的处理也就统一了.

    简述在单循环链表上尾指针取代头指针的作用?

    在用头指针表示的单循环链表中,找开始结点a1的时间是O(1),然而要找终端结点an则需要从头指针开始遍历整个链表,其时间是O(n) ,在很多实际问题中,表的操作常常是在表尾进行的,此时头指针表示的单循环链表就显得不够方便,如果改用尾指针来表示单循环链表,则查找开始结点a1和终端结点an都很方便,查找时间都是O(1).

    栈和队列

     

    名词解释:

     

    :也叫后进先出表,是限定仅在表尾进行插入和删除操作的线性表,表尾端称为栈顶,表头端称为栈底,不含元素的空表称为空栈,

    顺序栈:采用顺序存储结构的栈称为顺序栈.

    链栈:采用链式存储结构的栈称为链栈.

    队列:是一种先进先出的线性表,它只允许在表的一段进行插入,而另一端删除元素,允许插入的一端叫做队尾,允许删除的一端称为队首.

    链队列:用链表示的队列,需要两个指针分别指示队头和队尾,为了操作方便,也给链队列添加一个哨兵结点.

    循环队列:队列是"先进先出表",随着入队出队的进行,会使整个队列整体向后移动,当队尾指针移到最后,若再有元素入队就会出现"假溢出",因为此时队头部分还有空间可用,循环队列是将队列的数据区看成头尾相接的循环结构,可解决"假溢出"现象.

    双端队列:是限定插入,删除在表的两端进行的线性表,这两端分别称为端点.

    填空题:

    栈的两种存储方式:顺序存储链式存储.

    栈满的判断条件:s.top==stack.size.

    栈空的判断条件:s.top==0.

    栈满入栈栈上溢,栈空出栈栈下溢.

    链栈使用多栈共享技术时,可使用静态链表结构实现.

    队列的两种存储方式:顺序存储链式存储.

    循环队列采用少用一个元素存储空间的办法下,判断队列满的条件:front==(rear+1)%size.

    循环队列判断队列满的方法有:少用一个元素存储空间,增设一个标志量,使用计数器.

    队列的应用:杨辉三角.

    栈的应用:数制转换,括号匹配,表达式求值,汉诺塔(递归用栈实现).

    简答题:

    什么是多栈共享技术?

    在一个程序中经常会同时使用多个栈,使用顺序存储结构的栈,空间大小难以估计,这样使得有的栈已出,有的栈还有空闲空间,可以让多个栈共享一个足够大的连续向量空间(数组),通过利用栈的动态特性來使其存储空间互相补充,这就是多栈的共享技术,两个栈共享空间,主要利用了"栈底位置不变,栈顶位置动态变化"的特性.

    与顺序队列相比,循环队列有哪些优点?

    可解决假溢出现象(内容自行拓展).

    简述线性表,栈,队列的区别和联系?

    相同点:    都是线性结构,都是逻辑结构的概念,都可以用顺序存储或链式存储,栈和队列是两种特殊的线性表,即受限的线性表,只对插入和删除运算加以限制.

    不同点:    1.运算规则不同,线性表为随机存取,而栈只允许在一端进行插入,删除运算,因而是后进先出表,队列只允许在一端进行插入,另一端删除运算,因而是先进先出表.

                    2.用途不同,堆栈用于子程调用和保护现场,队列用于多道作业处理,指令寄存及其他运算等.

    名词解释:

    :是由零个或多个字符组成的有限序列.

    子串:串中任意个连续的字符组成的子序列称作该串的子串.

    主串:包含子串的串相应的称为主串.

    子串在主串中的位置:子串的第一个字符在主串中的位置表示.

    空串:长度为零的串称为空串.

    空格串:串中元素均为空格的串称为空格串.

    串相等:长度相等且对应位置字符都相等.

    填空题:

    在程序中,串分为串常量串变量.

    串的存储结构:顺序存储结构,链式存储结构,堆存储结构.

    串的应用:文本编辑.

    简答题:

    串和线性表的区别?

    串的逻辑结构与线性表极为相似,区别仅在于串的数据对象约束为字符集,然而串的操作与线性表有很大的差别,在线性表基本操作中,大多以单个元素作为操作对象;而在串的基本操作中通常以"串的整体"作为操作对象.

    简述静态分配的顺序串与动态分配的顺序串的区别?

    程序运行前被分配以一个给定大小的数组空间的顺序串称为静态顺序串,在程序运行过程中,动态分配空间能以链表形式存在的顺序串称为动态顺序串,静态串在内存一片连续的数据区中,动态串在内存堆中.

    串的链式存储与串的顺序存储相比,在哪些操作上效率更高?

    插入,删除,因为无需移动其他元素(内容自行扩充).

    数组与广义表

    名词解释:

    广义表:是由零个或多个单元素或子表所构成的有限序列,是线性表的推广,也有人称其为列表.

    数组:类型一致的有限个数据元素按顺序连续存储.

    矩阵的压缩存储:有的矩阵中有许多值相同元素或者是零元素,为了节省存储空间对这类矩阵采用多个值相同的元素只分配一个存储空间,有时零元素不存储的存储策略,称为矩阵的压缩存储.

    特殊矩阵:值相同的元素或者零元素在矩阵中的分布有一定规律的矩阵称为特殊矩阵.

    稀疏矩阵:非零的数据元素个数很少的矩阵称为稀疏矩阵.

    对称矩阵:一个n阶方阵,若满足aij=aji,则称该矩阵为对称矩阵.

    三角矩阵:主对角线上方和下方的元素(不包括对角线)均为常数或零元素的矩阵.

    行表:记录稀疏矩阵中每行非零元素在三元组表中的起始位置的表.

    三元组表:若线性表顺序存储的每一个结点均是三元组,则该线性表的存储结构称为三元组表.

    带状矩阵:所有非零元素均集中在以主对角线为中心的带状区域的矩阵.

    填空题:

    数组的两种存储方式:顺序存储链式存储.

    数组的顺序存储有两种方式:按行存储按列存储.

    稀疏矩阵可以采用三元组表十字链表来存储.

    简答题:

    广义表和线性表的区别?

    1.广义表是线性表的推广,是由零个或多个单元素或子表所构成的有限序列.

    2.线性表的成分都是结构上不可分割的单个数据元素,而广义表的成分既可以是单元素,也可以是有结构的表,其定义是递归的定义.

    树和二叉树

    名词解释:

    :是n个结点的有限集合,n≥0,有且只有一个称为根的结点,根结点无前驱.

    森林:m(m≥1)棵互不相交的树的集合.

    有序树:树中结点的各子树看成是从左至右依次有序的,且不能交换.

    二叉树:是一种树型的结构,它的特点是每个结点之多有两棵子树,且有左右之分,不可任意颠倒.

    完全二叉树:深度为k的,有n个结点的二叉树,当且仅当其每一个结点都与深度为k的满二叉树中编号从1至n的结点一一对应时.

    满二叉树:是一棵深度为k的,且有(2^k)-1个结点的二叉树.

    遍历二叉树:是按照某种搜索路径巡访二叉树中的每个结点,使得这些结点均被访问一次.

    线索二叉树:由每个结点中包含左指针,左标志位,数据域,右标志位,右指针五部分组成的二叉链表,叫做线索链表,指向前驱或后继的指针叫做线索,以二叉树某一种遍历顺序给空指针加线索的过程叫做线索化,线索化了的二叉树称为线索二叉树.

    哈夫曼树:又称最优二叉树,是一类带权路径长度最短的树.

    哈夫曼编码:在哈夫曼树中,约定左分支代表0,右分支代表1,把叶子结点到根结点的路径上的左右分支代表的码从下至上一次连接起来,组成的字符串称为该叶子结点的哈夫曼编码,这就是哈夫曼编码.

    二叉排序树:或者是空树,或者是符合以下性质的二叉树.

                        1.若它的左子树不空,则左子树上所有结点均小于它的根结点值.

                        2.若它的右子树不空,则右子树上所有结点均大于它的根结点值.

    平衡二叉排序树(AVL树):或者是空树,或者是符合一下性质的二叉排序树.

                        1.左子树和右子树的高度之差的绝对值小于等于1.

                        2.左子树和右子树也是平衡二叉排序树.

    B-树(B树):略,看书.

    填空题:

    在二叉树中,第i层结点最多为2^k-1个.

    深度为k的二叉树中,结点总数最多为(2^k)-1个.

    二叉树中,n0=n2+1,n2=n0-1(n0为二叉树中度为0的结点的个数,n2为二叉树中度为2的结点的个数).

    有n个结点的完全二叉树,深度为k,则k=log2n+1.(log以2为底,括号是向下取整,不是方括号)

    k层的完全二叉树至少有2^k-2个叶子结点.

    二叉树的两种存储结构:顺序存储结构链式存储结构.

    树的三种常用的存储方法:孩子表示法,双亲表示法孩子兄弟表示法.

    树的遍历方法:先根遍历后根遍历.

    简答题:

    非线性结构的特点?

    表示结点间关系的前驱后继不具有唯一性,结点间是一对多或多对多的关系.

    二叉树的五种基本形态?

    (1)空二叉树——如图(a);

    (2)只有一个根结点的二叉树——如图(b);

    (3)只有左子树——如图(c);

    (4)只有右子树——如图(d);

    (5)完全二叉树——如图(e)。

    只有三个结点的二叉树的五种形式?

    因为二叉树是有序树,所有有左右之分,这是五棵不同的二叉树,但若下列五棵是树,不是二叉树,则后面四种为同一棵树.

     

    名词解释:

    :图G由两个集合V和E组成,记为G=(V,E),其中V是顶点的有穷非空集合,E是由V中顶点的序偶组成的有穷集,这些序偶称为边或弧.

    顶点:图中的数据元素称为顶点.

    完全图:边数恰好等于n(n-1)/2的n个顶点的无向图称为完全图(无向图中任意两个顶点之间都有一条边相连,称该图为完全图).

    有向完全图:有n(n-1)条边的有向图称为有向完全图(图中每个顶点和其余n-1个顶点都有弧相连).

    入度:以顶点V为头的弧的数目称为V的入度.

    出度:以顶点V为尾的弧的数目称为V的出度.

    连通图:在无向图中,任意两个顶点之间都有路径相通.

    强连通图:在有向图中,任意两个顶点之间都有来回路径相通.

    生成树:生成树是无向连通图的一个极小连通子图,它含有图中的全部顶点和使任意顶点都连通的最少的边.

    邻接矩阵:表示图中结点之间关系的矩阵称为邻接矩阵.

    邻接表:由顶点数据表和表示数据关系的边(弧)构成的表.

    十字链表:可以把它看成是将有向图的邻接表和逆邻接表结合起来形成的一种存储形式.

    图的遍历:从某一顶点出发按序访问图中所有结点,且使每个结点仅被访问一次.

    最小生成树:无向网中边上权值之和为最小的生成树.

    DAG:有向无环网.

    拓扑排序:由某个集合上的一个偏序得到该集合上一个全序的操作称为拓扑排序.

    关键路径:在AOE网中,从源点到汇点的最长路径称为关键路径.

    AOE网:用顶点表示事件,用弧表示活动,弧的权值表示活动所需的时间,构造的有向网称为AOE网.

    简单路径:一条路径上除了开始顶点和结束顶点外,其余顶点均不相同.

    弧头:边的终点称为弧头.

    弧尾:边的始点称为弧尾.

    填空题:

    边很少的图称为稀疏图,反之称为稠密图.

    有向图中,所有顶点的入度与出度的和等于边个数的2倍.

    图的存储方法:邻接矩阵,邻接表,邻接多重表,十字链表边集数组.

    图的深度优先搜索类似于树的先根遍历.

    图的广度优先搜索类似于树的层次遍历.

    连通图→深度优先搜索遍历→深度搜索生成树

    连通图→广度优先搜索遍历→广度搜索生成树

    简答题:

    邻接矩阵表示法的特点?

    1.对于无向图而言,它的邻接矩阵是对称矩阵,因此可以采用特殊矩阵的压缩存储法,但对于有向图而言,其中的弧是由方向的,因此有向图的邻接矩阵不一定是对称矩阵,对于有向图的邻接矩阵的存储则需要n*n个存储空间.

    2.采用邻接矩阵表示法,便于判断图中任意两个顶点之间是否有边相连,即根据邻接矩阵中的信息来判断,另外还便于求得各个顶点的度,对于无向图而言,其邻接矩阵第i行元素之和就是图中第i个顶点的度.

    邻接表表示法的特点?

    1.n个顶点,e条边的无向图,若采取邻接表作为存储结构,需要n个顶点数据和2e个表示边的结点,显然在边很稀疏的情况下,用邻接表存储所需的空间比邻接矩阵所需的空间少.

    2.无向图的度,在无向图的邻接表中,顶点Vi的度恰好就是第i个边链表上结点的个数.

    3.有向图的度,在有向图中,第i个边链表上结点的个数就是顶点Vi的出度,只需通过表头向量表中找到第i个顶点的边链表的头指针,实现顺链查找计数即可.

    DFS(深度优先搜索遍历)的基本思路?

    假设初始状态是图中所有顶点均未被访问过,则深度优先搜索可从某个顶点V出发,首先访问此顶点(称此顶点为初始点),然后依次从V的任一个未被访问的邻接点出发进行深度优先搜索遍历,直到图中所有与V有路径相通的顶点都被访问到,若此时图中尚有顶点未被访问,则另选图中一个未被访问的顶点作为初始点,重复上述步骤,直到图中所有顶点都被访问过为止.

    BFS(广度优先搜索遍历)的基本思路?

    1.从图中某个顶点V0出发,首先访问V0,依次访问V0的各个未被访问的邻接点.

    2.分别从这些邻接点(端结点)出发,依次访问各个未被访问的邻接点,访问时应保证:如果Vi和Vk为当前结点,且Vi在Vk之前被访问,则Vi的所有未被访问的邻接点应在Vk的所有未被访问的邻接点之前访问.

    3.重复步骤2,直到所有结点均没有未被访问的邻接点.

    4.若此时还有顶点未被访问,则选一个未被访问的顶点作为起始点,重复上述过程,直至所有顶点均被访问过为止.

    查找

     

    名词解释:

    关键字:是数据元素中某个数据项的值,用它可以识别一个或一组数据元素.

    查找:根据给定的关键字的值,检索某个与该值相等的数据元素是否在查找表中,找到为查找成功,找不到为查找失败.

    查找表:是由同一类型的数据元素或记录构成的集合.

    静态查找表:查询某个特定的数据元素是否在查找表中,检索某个特定的数据元素的各种属性.

    动态查找表:在查找过程中同时插入查找不存在的数据元素,或者从查找表中删除已存在的某个数据元素.

    平均查找长度(ASL):为确定数据元素在查找表中的位置,需和给定值进行比较的关键字个数的期望值,称为查找算法在查找成功时的平均查找长度.

    冲突:两个不同的关键字,其散列函数值相同,因而被映射到同一表位置的现象称为冲突.

    填空题:

    哈希函数的构造方法:直接定址法,数字分析法,平方取中法,折叠法,除留余数法随机数法.

    哈希函数处理冲突的方法:开放地址法,再哈希法,链地址法建立一个公共溢出区.

    简答题:

    各查找方法的基本思想,平均查找长度?

    顺序查找的基本思路:对于给定的关键字k,从线性表的第一个元素开始依次向后与记录的关键字域相比较,如果某个记录的关键字等于k,则查找成功,否则查找失败.平均查找长度ASL=3(n+1)/4.

    折半(二分)查找的基本思路:先取表的中间位置的记录关键字和所给关键字进行比较,若相等,则查找成功,如果给定关键字比该记录的关键字小,则说明所要查找的记录只可能在表的前半部分,反之,则在后半部分,重复步骤,每一次比较就可以将查找范围缩小一半,直到找到给定的关键字的记录,查找成功,找不到为查找失败.平均查找长度ASL=log2(n+1)-1.

    分块查找(索引顺序表查找)的基本思路:先确定待查记录所在的块(子表),然后在块中顺序查找.平均查找长度ASL=1/2[(n/s)+1]+s/2.

    哈希查找(散列查找)的基本思路:在进行查找时,在记录的存储位置与它的关键字之间建立一个确定的对应关系h,以线性表中每个元素的关键字k为自变量,通过函数h(k)计算出该元素的存储位置,我们将h函数称为散列函数或哈希函数,这种查找方法称为散列查找或哈希查找.

    排序

     

    名词解释:

    排序:就是按关键字值的递增或递减的次序,把文件中的各记录一次排列起来,可使一个无序文件变成有序文件的一种操作.

    排序算法的稳定性:相同元素排序前后的相对位置没有发生变化,则为稳定,反之为不稳定.

    内部排序:在排序过程中,所有待排序记录都放在内存中进行的排序称为内部排序.

    外部排序:当待排序的记录很多,排序时不仅要使用内存,而且还要使用外部存储器的排序方法称为外部排序.

    简答题:

    各排序方法的基本思想,时间复杂度,空间复杂度及稳定性?

     

    直接插入排序的基本思想:直接插入排序是一种最简单的排序方法,基本操作是将一条记录插入到已排好的有序表中,从而得到一个新的,记录数量增一的有序表.时间复杂度O(n^2).空间复杂度O(1).直接插入排序是稳定的.

    希尔排序的基本思想:先将整个待排元素序列分割成若干子序列分别进行直接插入排序,然后依次缩减增量再进行排序,使整个序列中的元素基本有序时,再对全体元素进行一次直接插入排序,实质就是分组直接插入排序.时间复杂度O(n^2).空间复杂度O(1).希尔排序是不稳定的.

    冒泡排序的基本思想:先将第一个记录的关键字和第二个记录的关键字进行比较,若为逆序,则将两个记录交换,然后比较第二个记录和第三个记录的关键字,以此类推,直至第n-1个记录和第n个记录的关键字进行过比较为止.时间复杂度O(n^2).空间复杂度O(1).冒泡排序是稳定的.

    快速排序的基本思想:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另一部分的所有数据都要小,然后再按此方法对这两部分数据进行快速排序,整个排序过程可以递归进行,以达到整个序列有序.时间复杂度O(nlog2n).空间复杂度O(nlog2n).快速排序是不稳定的.

    直接选择排序的基本思想:对于给定的一组记录,经过第一轮比较后得到最小的记录,然后将该记录与第一个记录的位置交换,接着对不包括第一个记录以外的其他记录进行第二轮比较,得到最小的记录并与第二个记录的位置交换,重复该过程,直到进行比较的记录只有一个时为止.时间复杂度O(n^2).空间复杂度O(1).直接选择排序是不稳定的.

    堆排序的基本思想:堆排序是指利用堆积树(堆)这种数据结构所设计的一种排序算法,它是选择排序的一种,可以利用数组的特点快速定位索引的元素,堆分为大根堆和小根堆,是完全二叉树.时间复杂度O(nlog2n).空间复杂度O(1).堆排序是不稳定的.

    归并排序的基本思想:将待排序序列看成是n个长度为1的有序序列,将相邻的有序表成对归并,得到n/2个长度为2的有序表;将这些有序表再次归并,得到n/4个长度为4的有序序列;如此重复进行下去,最后得到一个长度为n的有序序列.时间复杂度O(nlog2n).空间复杂度O(n).归并排序是稳定的.

    基数排序的基本思想:是借助"分配"和"收集"两种操作对单逻辑关键字进行排序的一种内排序方法.时间复杂度O(d*n).空间复杂度O(n+r).基数排序是稳定的.

    作图题

     

    附加内容:

    文件:是由大量性质相同的记录组成的集合,可按其记录的类型不同而分成两类:操作系统文件和数据库文件.

    定长纪录文件:文件中每个记录含有的信息长度相同,则称这类记录为定长记录,由这类记录组成的文件称为定长纪录文件.

    不定长记录文件:文件中每个记录含有的信息长度不相同,则称这类记录为不定长记录,由这类记录组成的文件称为不定长纪录文件.

    文件的操作有两类:检索和修改.

    文件的检索有三种方式:顺序存取,直接存取,按关键字存取.

    文件的修改包括插入一个记录,删除一个记录和更新一个记录三种操作.

    顺序文件:物理记录的顺序与逻辑记录的顺序是一致的.

    连续文件:若次序相继的两个物理记录在存储介质上的存储位置是相邻的,则称连续文件.

    串联文件:物理记录之间的次序由指针相链表示,则称串联文件.

    索引文件:包含文件数据区和索引表两大部分的文件称作索引文件.

    索引项:索引表中的每一项称为索引项.

    索引顺序文件:数据区中记录也按关键字顺序排列,则称索引顺序文件,反之为索引非顺序文件.

    展开全文
  • 入门学习Linux常用必会60个命令实例详解doc/txt

    千次下载 热门讨论 2011-06-09 00:08:45
    虚拟控制台的切换可以通过按下Alt键和个功能键来实现,通常使用F1-F6 。 例如,用户登录后,按一下“Alt+ F2”键,用户就可以看到上面出现的“login:”提示符,说明用户看到了第二个虚拟控制台。然后只需按“Alt+...
  • ArrayList的底层实现是数组,数组的扩容是不断通过复制来完成的,所以存储的数据容量不断发生变化时,ArrayList的性能是比较差的。使用ArrayList时一般都是预知数据的最大容量。如果能直接使用数组,那使用数组当然...

    写给正在找工作的你

    都说金三银四,对于找工作的人来说,因为每年的三月或四月是不少互联网公司的年终季,不少人都是拿到年终奖后不满意,或者感觉职业发展受限,之后跑路。这样不少部门因为人员流动,就会有hc空缺出来。
    这里要说的是每年3、4月份确实是hc最多的季节,但同时是跳槽旺季,竞争大,你要想找到好的坑位,那就需要绝对的实力才行。
    相对来说,其实年底是个好时候,俗话说,铁打的营盘流水的兵,互联网的阵地上不少岗位是常年招人,常年缺人,当然hc并不富裕,但是年底的时候,看机会的人也少。毕竟不少人还是很在意“年终奖”的嘛。所以说,年底跳槽你可能会损失一部分年终奖,但换工作的竞争性相对来说也会少很多,竞争的人少了嘛,说不定你就可以凭“运气的实力”脱颖而出呢?

    快手面试

    算法

    面试官很亲切,说Excel表用过吧,Excel表中的编号一般是这样的,A…Z AA…AZ BA…BZ,分别对应数字0…25 26…51 52…77,类比做数字映射,给出一个字符串,求映射的结果。

    分析 这个题目其实很基础,可以理解为是以26为基准的进制转换,一个for循环,除了末尾的字符直接加到结果上之外,其他的字符位-‘A’+1的结果乘以26*(该字符位置与末尾的差值)。做这种题目一定要先思考,自己手动实现一下。
    如果想看具体代码答案,可以扫码关注【程序员之道】,后台回复“快手列转换”。
    在这里插入图片描述

    第二个算法,就稍微有一点偏了,如何实现redis的分布式锁。

    如果没有接触过高并发,或者没有使用过redis作为分布式锁,那这这个算法肯定是写不出来的,而且像这种算法,一般来说可能也就是让讲讲思路。具体实现确实有点难。
    关于分布式锁,其实是有几个坑的:

    1. 加锁,必须设置过期时间(防止释放锁失败,有过期时间,锁可以自动释放)。且加锁和设置过期时间必须为原子操作。否则,如果加锁成功,但设置过期时间时客户端崩溃,那设置过期时间就失败了。
    2. 加锁和释放锁必须是同一个客户端。用唯一id来标志。
    3. 释放锁时,判断锁是否属于自己及释放锁必须是原子操作。

    思考了这些,你能写成正确的加锁,解锁方式吗?具体的坑及正确的加解锁方式,关注【程序员之道】,后台回复“redis分布式锁”。

    基础

    • mysql索引怎么建立,查询语句select * from T where a=“a” and b=“b” and c=“c”,与select * from T where a=“a” and c=“c” and b="b"执行有什么区别吗?建议索引遵循什么原则?
      要点:
        (1)尽量减少like,但不是绝对不可用,”xxxx%” 是可以用到索引的
        (2)表的主键、外键必须有索引
        (3   谁的区分度更高(同值的最少),谁建索引,区分度的公式是count(distinct(字段))/count(*)
        (4)单表数据太少,不适合建索引
        (5)where,order by ,group by 等过滤时,后面的字段最好加上索引
        (6)如果既有单字段索引,又有这几个字段上的联合索引,一般可以删除联合索引;
        (7)联合索引的建立需要进行仔细分析;尽量考虑用单字段索引代替:
        (8)联合索引: mysql 从左到右的使用索引中的字段,一个查询可以只使用索引中的一部份,但只能是最左侧部分。例如索引是key index(a,b,c). 可以支持 a|a,b|a,b,c 3种组合进行查找,但不支持 b,c 进行查找.当最左侧字段是常量引用时,索引就十分有效。
        (9)前缀索引: 有时候需要索引很长的字符列,这会让索引变得大且慢。通常可以索引开始的部分字符,这样可以大大节约索引空间,从而提高索引效率。其缺点是不能用于ORDER BY和GROUP BY操作,也不能用于覆盖索引 Covering index(即当索引本身包含查询所需全部数据时,不再访问数据文件本身)。
       (10)NULL会导致索引形同虚设
    

    =和in可以乱序,比如a = 1 and b = 2 and c = 3 建立(a,b,c)索引可以任意顺序,mysql的查询优化器会帮你优化成索引可以识别的形式。

    • redis里有哪些数据结构,都用过什么?redis里Sorted Set怎么用,需要传什么参数?
      要点:
      redis的数据结构:String,Hash、List、Set、Sorted Set,用过哪些就说哪些就行了,没用过的,估计你根据名词也能大概猜出是什么。
      面试官问Sorted Set大概是你听到你说了Sorted Set,所以问一下你命令,看你是不是真的知道啊,不知道的话,这下没法蒙混过关了吧。有序集合,设置每个key的时候需要传入一个score参数。具体命令zadd key score value。还有一些其他的命令google学习一下吧!

    • java volatile干什么用的。public int incrment() { count++},两个线程同时访问是否有问题,count如果用volatile修饰呢?
      要点:
      volatile主要是保证多线程访问时的可见性。我们知道计算机为了提高访问内存的速度,引入了工作内存和主内存的概率,多线程访问数据时,访问的是工作内存的数据,各个线程之间的工作内存是分别隔离的。这就可能导致同一个变量,由于工作内存的存在,在不同线程“看到的值”是不一样的。但volatile关键字,强制了各线程读取变量时必须从主内存读取,同时对变量的修改也直接刷新到主内存,这样就保证了同一变量修改的同时可以立刻被其他线程“看到”。这里面使用了“内存屏障”的技术。
      对于count++,操作系统执行时,并不是一个原子操作,分为三步:1)将count变量load到内存。2)执行count+1。3)将结果存入内存。非原子性操作,任何一个步骤执行的时候,都可能被其他线程打断,所以多线程执行时会有问题。
      使用volatile修饰也是不可以的,因为始终不是原子操作,也只是保证可见性而已,原子性的问题无法解决。

    • jvm里内存分配什么样的,分别用来干什么?
      要点:
      JVM内存分配几乎是每个java开发人员的面试必考点,单纯这部分的内容都够写几个篇章的了。这里只是简单的介绍一下。
      JVM内存分为年轻代和老年代,其中年轻代又分为S0、S1、Eden区,JVM采用分代垃圾回收算法,因为这样才能更充分的利用年轻代和老年代的对象特点,最大化的提高垃圾回收效率。

    • 类对象定义后分配在年轻代。

    • 大对象或大数组直接分配在老年代。

      常见的垃圾回收算法有复制算法、标记清除、标记整理,然后又引出不同的垃圾回收器,垃圾回收器的迭代是不断发现问题并优化的过程,新生代收集器使用的收集器:Serial、PraNew、Parallel Scavenge;老年代收集器使用的收集器:Serial Old、Parallel Old、CMS。然后结合自己的理解再说一下!

    • jvm的栈是做什么,为什么有堆又有栈,只使用堆可以吗?
      要点:
      JVM的栈是线程私有的,一些基本变量都是存储在栈中的,Java栈中存放的是一个个的栈帧,每个栈帧对应一个被调用的方法,在栈帧中包括局部变量表(Local Variables)、操作数栈(Operand Stack)、指向当前方法所属的类的运行时常量池(运行时常量池的概念在方法区部分会谈到)的引用(Reference to runtime constant pool)、方法返回地址(Return Address)和一些额外的附加信息。当线程执行一个方法时,就会随之创建一个对应的栈帧,并将建立的栈帧压栈。当方法执行完毕之后,便会将栈帧出栈。
      为什么有了堆之后还要有栈?栈的存在可以说是为了解决递归调用的问题。如果只有堆内存,那就不会有递归调用了。

    • 分布式自增id怎么实现,如果用redis实现,怎么保证与数据库的一致性?
      分布式自增id一般使用MySQL的自增id、redis的incr函数,还有比较经典的雪花算法。
      MySQL自增id受数据库访问速度的限制,在分布式使用时qps不大。
      使用redis产生自增id,就要防止redis崩溃的可能性,一般在MySQL或hbase中记录当前最大的value值。或者如果你设计的是一个聊天室,那肯定是有持久化存储当前聊天室的最大seqId,如果redis集群出现崩溃,从持久化存储的地方取出最大seqId然后自增即可。

    • ArrayList,LinkedList有什么区别,分别什么时候使用?
      ArrayList的底层实现是数组,数组的扩容是不断通过复制来完成的,所以存储的数据容量不断发生变化时,ArrayList的性能是比较差的。使用ArrayList时一般都是预知数据的最大容量。如果能直接使用数组,那使用数组当然是最好的了。
      LinkedList的底层实现是链表,发生数据扩容时,性能较好,但同容量情况下占用的空间比ArrayList要大。对于数据频繁扩容的情况,推荐使用LinkedList。

    面试的内容还有很多,限于篇幅问题,在下一篇介绍。
    程序员的小伙伴们,觉得自己孤单么,那就加入公众号[程序员之道],一起交流沟通,走出我们的程序员之道!
    扫码加入吧!

    展开全文
  • 计算机网络谢希仁第七版 课后答案

    万次阅读 多人点赞 2019-09-03 23:13:25
    章 概述 1-01 计算机网络向用户可以提供那些服务?答: 连通性和共享 1-02 简述分组交换的要点。答:(1)报文分组,加首部(2)经路由器储存转发(3)在目的地合并 1-03 试从多个方面比较电路交换、报文交换和...

    谢希仁计算机网络第七版课后答案

    第一章 概述

    1-01 计算机网络向用户可以提供那些服务?答: 连通性和共享
    1-02 简述分组交换的要点。答:(1)报文分组,加首部(2)经路由器储存转发(3)在目的地合并
    1-03 试从多个方面比较电路交换、报文交换和分组交换的主要优缺点。
    在这里插入图片描述
    答: (1)电路交换:端对端通信质量因约定了通信资源获得可靠保障,对连续传送大量数据效率高。(2)报文交换:无须预约传输带宽,动态逐段利用传输带宽对突发式数据通信效率高,通信迅速。(3)分组交换:具有报文交换之高效、迅速的要点,且各分组小,路由灵活,网络生存性能好。
    1-04 为什么说因特网是自印刷术以来人类通信方面最大的变革?谢希仁计算机网络第七版课后答案
    答: 融合其他通信网络,在信息化过程中起核心作用,提供最好的连通性和信息共享,第一次提供了各种媒体形式的实时交互能力。
    谢希仁计算机网络第七版课后答案
    1-05 因特网的发展大致分为哪几个阶段?请指出这几个阶段的主要特点。
    答:从单个网络APPANET向互联网发展;TCP/IP协议的初步成型  建成三级结构的Internet;分为主干网、地区网和校园网;形成多层次ISP结构的Internet;ISP首次出现。
    1-06 简述因特网标准制定的几个阶段?
    答:(1)因特网草案(Internet Draft) ——在这个阶段还不是 RFC 文档。(2)建议标准(Proposed Standard) ——从这个阶段开始就成为 RFC 文档。(3)草案标准(Draft Standard)(4) 因特网标准(Internet Standard)
    1-07小写和大写开头的英文名internet 和Internet在意思上有何重要区别?
    答:(1) internet(互联网或互连网):通用名词,它泛指由多个计算机网络互连而成的网络。;协议无特指(2)Internet(因特网):专用名词,特指采用 TCP/IP 协议的互联网络。区别:后者实际上是前者的双向应用
    1-08 计算机网络都有哪些类别?各种类别的网络都有哪些特点?
    答:按范围:(1)广域网WAN:远程、高速、是Internet的核心网。
    (2)城域网:城市范围,链接多个局域网。
    (3)局域网:校园、企业、机关、社区。
    (4)个域网PAN:个人电子设备
    按用户:公用网:面向公共营运。专用网:面向特定机构。
    谢希仁计算机网络第七版课后答案
    1-09 计算机网络中的主干网和本地接入网的主要区别是什么?
    答:主干网:提供远程覆盖\高速传输\和路由器最优化通信。本地接入网:主要支持用户的访问本地,实现散户接入,速率低。
    1-10 试在下列条件下比较电路交换和分组交换。要传送的报文共x(bit)。从源点到终点共经过k段链路,每段链路的传播时延为d(s),数据率为b(b/s)。在电路交换时电路的建立时间为s(s)。在分组交换时分组长度为p(bit),且各结点的排队等待时间可忽略不计。问在怎样的条件下,分组交换的时延比电路交换的要小?(提示:画一下草图观察k段链路共有几个结点。)
    答:线路交换时延:kd+x/b+s, 分组交换时延:kd+(x/p)(p/b)+ (k-1)(p/b),其中(k-1)(p/b)表示K段传输中,有(k-1)次的储存转发延迟,当s>(k-1)(p/b)时,电路交换的时延比分组交换的时延大,当x>>p,相反。
    1-11 在上题的分组交换网中,设报文长度和分组长度分别为x和(p+h)(bit),其中p为分组的数据部分的长度,而h为每个分组所带的控制信息固定长度,与p的大小无关。通信的两端共经过k段链路。链路的数据率为b(b/s),但传播时延和结点的排队时间均可忽略不计。若打算使总的时延为最小,问分组的数据部分长度p应取为多大?(提示:参考图1-12的分组交换部分,观察总的时延是由哪几部分组成。)答:总时延D表达式,分组交换时延为:D= kd+(x/p)((p+h)/b)+ (k-1)(p+h)/b D对p求导后,令其值等于0,求得p=[(xh)/(k-1)]^0.5
    1-12 因特网的两大组成部分(边缘部分与核心部分)的特点是什么?它们的工作方式各有什么特点?
    答:边缘部分:由各主机构成,用户直接进行信息处理和信息共享;低速连入核心网。核心部分:由各路由器连网,负责为边缘部分提供高速远程分组交换。
    谢希仁计算机网络第七版课后答案
    1-13 客户服务器方式与对等通信方式的主要区别是什么?有没有相同的地方?
    答:前者严格区分服务和被服务者,后者无此区别。后者实际上是前者的双向应用。
    1-14 计算机网络有哪些常用的性能指标?
    答:速率,带宽,吞吐量,时延,时延带宽积,往返时间RTT,利用率
    1-15 假定网络利用率达到了90%。试估计一下现在的网络时延是它的最小值的多少倍?
    解:设网络利用率为U。,网络时延为D,网络时延最小值为D0U=90%;D=D0/(1-U)---->D/ D0=10 现在的网络时延是最小值的10倍
    1-16 计算机通信网有哪些非性能特征?非性能特征与性能特征有什么区别?
    答:征:宏观整体评价网络的外在表现。性能指标:具体定量描述网络的技术性能。
    1-17 收发两端之间的传输距离为1000km,信号在媒体上的传播速率为2×108m/s。试计算以下两种情况的发送时延和传播时延:
    (1) 数据长度为107bit,数据发送速率为100kb/s。
    (2) 数据长度为103bit,数据发送速率为1Gb/s。
    从上面的计算中可以得到什么样的结论?
    解:(1)发送时延:ts=107/105=100s传播时延tp=106/(2×108)=0.005s
    (2)发送时延ts =103/109=1µs传播时延:tp=106/(2×108)=0.005s
    结论:若数据长度大而发送速率低,则在总的时延中,发送时延往往大于传播时延。但若数据长度短而发送速率高,则传播时延就可能是总时延中的主要成分。
    1-18 假设信号在媒体上的传播速度为2×108m/s.媒体长度L分别为:
    (1)10cm(网络接口卡)(2)100m(局域网)
    (3)100km(城域网)(4)5000km(广域网)
    试计算出当数据率为1Mb/s和10Gb/s时在以上媒体中正在传播的比特数。
    谢希仁计算机网络第七版课后答案
    解:(1)1Mb/s:传播时延=0.1/(2×108)=5×10-10比特数=5×10-10×1×106=5×10-4 1Gb/s: 比特数=5×10-10×1×109=5×10-1
    (2)1Mb/s: 传播时延=100/(2×108)=5×10-7比特数=5×10-7×1×106=5×10-1 1Gb/s: 比特数=5×10-7×1×109=5×102
    (3) 1Mb/s: 传播时延=100000/(2×108)=5×10-4比特数=5×10-4×1×106=5×1021Gb/s: 比特数=5×10-4×1×109=5×105
    (4)1Mb/s: 传播时延=5000000/(2×108)=2.5×10-2比特数=2.5×10-2×1×106=5×1041Gb/s: 比特数=2.5×10-2×1×109=5×107
    1-19 长度为100字节的应用层数据交给传输层传送,需加上20字节的TCP首部。再交给网络层传送,需加上20字节的IP首部。最后交给数据链路层的以太网传送,加上首部和尾部工18字节。试求数据的传输效率。数据的传输效率是指发送的应用层数据除以所发送的总数据(即应用数据加上各种首部和尾部的额外开销)。若应用层数据长度为1000字节,数据的传输效率是多少?
    解:(1)100/(100+20+20+18)=63.3%
    (2)1000/(1000+20+20+18)=94.5%
    1-20 网络体系结构为什么要采用分层次的结构?试举出一些与分层体系结构的思想相似的日常生活。答:分层的好处:①各层之间是独立的。某一层可以使用其下一层提供的服务而不需要知道服务是如何实现的。②灵活性好。当某一层发生变化时,只要其接口关系不变,则这层以上或以下的各层均不受影响。③结构上可分割开。各层可以采用最合适的技术来实现④易于实现和维护。⑤能促进标准化工作。与分层体系结构的思想相似的日常生活有邮政系统,物流系统。
    谢希仁计算机网络第七版课后答案
    1-21 协议与服务有何区别?有何关系?答:网络协议:为进行网络中的数据交换而建立的规则、标准或约定。由以下三个要素组成:
    (1)语法:即数据与控制信息的结构或格式。
    (2)语义:即需要发出何种控制信息,完成何种动作以及做出何种响应。
    (3)同步:即事件实现顺序的详细说明。协议是控制两个对等实体进行通信的规则的集合。在协议的控制下,两个对等实体间的通信使得本层能够向上一层提供服务,而要实现本层协议,还需要使用下面一层提供服务。
    协议和服务的概念的区分:
    1、协议的实现保证了能够向上一层提供服务。本层的服务用户只能看见服务而无法看见下面的协议。下面的协议对上面的服务用户是透明的。
    2、协议是“水平的”,即协议是控制两个对等实体进行通信的规则。但服务是“垂直的”,即服务是由下层通过层间接口向上层提供的。上层使用所提供的服务必须与下层交换一些命令,这些命令在OSI中称为服务原语。

    1-22 网络协议的三个要素是什么?各有什么含义?谢希仁计算机网络第七版课后答案
    答:网络协议:为进行网络中的数据交换而建立的规则、标准或约定。由以下三个要素组成:
    (1)语法:即数据与控制信息的结构或格式。
    (2)语义:即需要发出何种控制信息,完成何种动作以及做出何种响应。
    (3)同步:即事件实现顺序的详细说明。
    1-23 为什么一个网络协议必须把各种不利的情况都考虑到?
    答:因为网络协议如果不全面考虑不利情况,当情况发生变化时,协议就会保持理想状况,一直等下去!就如同两个朋友在电话中约会好,下午3点在公园见面,并且约定不见不散。这个协议就是很不科学的,因为任何一方如果有耽搁了而来不了,就无法通知对方,而另一方就必须一直等下去!所以看一个计算机网络是否正确,不能只看在正常情况下是否正确,而且还必须非常仔细的检查协议能否应付各种异常情况。
    1-24 论述具有五层协议的网络体系结构的要点,包括各层的主要功能。谢希仁计算机网络第七版课后答案
    答:综合OSI 和TCP/IP 的优点,采用一种原理体系结构。各层的主要功能:物理层 物理层的任务就是透明地传送比特流。(注意:传递信息的物理媒体,如双绞线、同轴电缆、光缆等,是在物理层的下面,当做第0 层。) 物理层还要确定连接电缆插头的定义及连接法。数据链路层 数据链路层的任务是在两个相邻结点间的线路上无差错地传送以帧(frame)为单位的数据。每一帧包括数据和必要的控制信息。网络层 网络层的任务就是要选择合适的路由,使 发送站的运输层所传下来的分组能够
    正确无误地按照地址找到目的站,并交付给目的站的运输层。运输层 运输层的任务是向上一层的进行通信的两个进程之间提供一个可靠的端到端服务,使它们看不见运输层以下的数据通信的细节。应用层 应用层直接为用户的应用进程提供服务。
    1-25 试举出日常生活中有关“透明”这种名词的例子。
    答:电视,计算机视窗操作系统、工农业产品
    1-26 试解释以下名词:协议栈、实体、对等层、协议数据单元、服务访问点、客户、服务器、客户-服务器方式。
    答:实体(entity) 表示任何可发送或接收信息的硬件或软件进程。协议是控制两个对等实体进行通信的规则的集合。客户(client)和服务器(server)都是指通信中所涉及的两个应用进程。客户是服务的请求方,服务器是服务的提供方。客户服务器方式所描述的是进程之间服务和被服务的关系。 协议栈:指计算机网络体系结构采用分层模型后,每层的主要功能由对等层协议的运行来实现,因而每层可用一些主要协议来表征,几个层次画在一起很像一个栈的结构.对等层:在网络体系结构中,通信双方实现同样功能的层.
    协议数据单元:对等层实体进行信息交换的数据单位.服务访问点:在同一系统中相邻两层的实体进行交互(即交换信息)的地方.服务访问点SAP是一个抽象的概念,它实体上就是一个逻辑接口.
    1-27 试解释everything over IP 和IP over everthing 的含义。谢希仁计算机网络第七版课后答案
    TCP/IP协议可以为各式各样的应用提供服务 (所谓的everything over ip)

    答:允许IP协议在各式各样的网络构成的互联网上运行(所谓的ip over everything)
    在这里插入图片描述

    计算机网络答案 下载地址在这里 https://www.cnblogs.com/leetcodetijie/gallery/image/340363.html

    展开全文
  • 建模方法(四)-因子分析定义和应用

    万次阅读 多人点赞 2018-08-20 20:58:05
    通过研究众多变量之间的内部依赖关系,使用少数几个“抽象”的变量来表示其基本的 数据结构。这几个抽象的变量被称作“因子”,能反映原来 众多变量的主要信息。原始的变量是可观测的显在变量,而 因子一般是不可...
  • 将已经集成好的软件系统,作为整个计算机系统的个元素,与计算机硬件、外设、某些支持软件、数据和人员等其它系统元素结合在一起,在实际运行(使用)环境下, - 对计算机系统进行系列测试活动。 根本任务 ...
  • 2021【软件测试】面试题合集大放送

    万次阅读 多人点赞 2019-09-10 18:04:37
    准备好场面试不仅需要在简历上多下功夫,还需要为面试问答做好充足的准备,简历书写请参考:https://blog.csdn.net/leboxy/article/details/100658701。以下是“大佬”本人从乐搏学院VIP学员面试经验中收集的,...
  • 主成分分析和因子分析的介绍、区别和联系

    万次阅读 多人点赞 2019-07-14 00:46:00
    本文介绍一下主成分分析、因子分析,进而介绍它们之间的区别和联系。 两个方法的推导我也还有一些...从其介绍中我们可以知道,主成分分析实际上是将相关性很强的变量通过一定的线性组合合并成个综合变量,达到降...
  • 前言 数据结构:是指相互之间存在种或多种特定关系的数据元素的集合用计算机存储、组织数据的方式。...其次,数据结构是计算机软考、计算机等级考试等相关考试的必考内容之,想要顺利通过这些考...
  • 它可以通过一个Hash函数将个元素映射成个位阵列( Bit array )中的个点。这样一来,我们只要看看这个点是不是1就可以知道集合中有没有它了。这就是布隆过滤器的基本思想。 Hash面临的问题就是冲突。假设...
  • 模拟滤波器和数字滤波器 研究

    千次阅读 2016-07-28 17:20:43
    最近对于模拟滤波器和数字滤波器有一些困惑,于是简单研究了一下模拟滤波器和数字滤波器,现在记录一下。 1、模拟滤波器。模拟滤波器分为无源和有源,无源...无源滤波器结构相对简单,成本较低;有源滤波器成本较高,
  • 蛋白质结构预测准确与发展情况

    千次阅读 2018-10-09 12:01:32
    因此,进行二级结构预测需要通过统计和分析发现这些倾向或者规律,二级结构预测问题自然就成为模式分类和识别问题。蛋白质二级结构的组成规律性比较强,所有蛋白质中约85%的氨基酸残基处于三种基本二级结构状态(a...
  • 由于文章有点多,并且发的文章也不是个系列个系列发的,不过我的文章大部分都是围绕着 数据结构 + 算法 + 计算机网络 + 操作系统 + Linux + 数据库 这几个方面发的,为了方便大家阅读,我整理了波。...
  • 计算机体系结构课后答案

    万次阅读 多人点赞 2018-12-19 21:02:07
    层次机构:按照计算机语言从低级到高级的次序,把计算机系统按功能划分成多级层次结构,每层以种不同的语言为特征。这些层次依次为:微程序机器级,传统机器语言机器级,汇编语言机器级,高级语言机器级,应用...
  • 2015年以来,我国经济进入了个新阶段,主要经济指标之间的联动性出现背离,经济增长持续下行与CPI持续低位运行,居民收入有所增加而企业利润下降,消费上升而投资下降,等等。对照经典经济学理论,当前我国出现...
  • 偏最小二乘法PLS和PLS回归的介绍及其实现方法

    万次阅读 多人点赞 2018-12-03 22:23:23
    偏最小二乘法实现了,在个算法下,可以同时实现回归建模(多元线性回归)、数据结构简化(主成分分析)以及两组变量之间的相关性分析(典型相关分析)。 PCA方法虽解决了自变量共线性的问题,但是并没有考虑自变量...
  • 如何用Keras从头开始训练个在CIFAR10上准确达到89%的模型CIFAR10 是个用于图像识别的经典数据集,包含了10个类型的图片。该数据集有60000张尺寸为 32 x 32 的彩色图片,其中50000张用于训练,10000张用于测试...
  • DenseNet 简介

    万次阅读 多人点赞 2017-08-17 19:00:11
    如下图所示是个基本DNN结构通过forward传播和backword传播来训练个模型 包含input层,L个隐藏层和个output 隐层使用的sigmoid激活函数 一般的优化方法有如下几种 GD:对所有样本计算完次梯度然后更新权重 ...
  • 人脸识别技术有静态和动态人脸识别之分...红外人脸识别组件是由红外泛光灯与IR摄像头组成,输出一张红外IR图,通过红外泛光灯,可以在黑暗中成像红外图,因此其适用范围远大于普通的RGB摄像头,并且不容易被自然光环...
  • 什么是拓扑结构_拓扑结构

    万次阅读 多人点赞 2018-09-09 09:17:01
    什么是拓扑结构?  首先我们来解释一下拓扑的含义,所谓“拓扑”就是把实体抽象成与其大小、形状无关的“点”,而把连接实体的线路抽象成“线”,进而以图的形式来表示这些点与线之间关系的方法,其目的在于研究...
  • 章 绪论 、选择题 1. A B 2.B 3.B 4. D 5.A 6.A 7.C 8. B 9.D 10. A 二、填空题 1. 逻辑关系 2.树形结构 图状结构 3.链式存储结构 4. 没有 1 没有 1 5. 前驱 1 后继 多个 6. 多个 7.有穷性 确定性...
  • 通过使用软件体系结构,可以有效地分析用户需求,方便系统的修改,以及减小程序构造风险。 随着软件规模不断地增大和复杂程度日益增高,系统框架架构的设计变得越来越关键。软件框架设计的核心问题是能否复用已经...
  • 本文提出了种利用不断调大学习的方法试图跳出SGD优化过程中的局部极小值或者鞍点的方法,并提出了两种具体的方法:随机漫步起跳法和历史最优起跳法,实验证明相对常规优化方法有一定性能提升。
  • 知识图谱构建技术一览

    万次阅读 多人点赞 2019-09-03 23:21:11
    知识图谱构建技术一览、什么是知识图谱二、知识图谱技术架构()数据获取(Data Acquisition)(二)信息抽取(Information Extraction)(1)实体抽取(Entity Extraction)/命名实体识别(Name Entity ...
  • 网络拓扑结构

    万次阅读 2018-10-02 20:19:10
    网络拓扑结构 网络拓扑结构是指用传输媒体对各种设备进行连接的物理布局,即用什么方式把网络中的计算机等设备连接起来。网络中的计算机等设备要实现互连,就需要以...、总线型拓扑结构 总线结构上所有的结点都连...
  • 计算机系统结构样例试卷、选择题(每小题2分,共20分)1、关于计算机系统结构、计算机组成和计算机实现间的关系说法正确的是( )。A.计算机组成是计算机系统结构的逻辑实现B.种计算机系统结构只可以有种...
  • (问了几个哥们,他们说美团待遇不错,就起来了,哈哈……) 美团的职位还是很多的,大体分为产品类和技术类,技术类就是十个左右的职位,我当时网申的DBA管理和运营类的 当天下午6点他们就开始了笔试,他们笔试...
  • 以sigmoid函数作为神经元的激励函数为例,这个大家可能稍微熟悉一点,毕竟我们逻辑回归部分重点提到了这个非线性的函数,把输入值压缩成0-1之间的个概率值。而通过这个非线性映射和设定的阈值,我们可以把空间切...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 566,759
精华内容 226,703
关键字:

一注结构通过率