zoukankan      html  css  js  c++  java
  • 网易有道2017内推选择题详解

    1.关于数据解析以下说法正确的是:

    A.XML数据结构有且只有一个根节点,并且不能嵌套
    B.JSONObjetWithData:options:error:使用文件流
    C.writeJSONObject:toStream:options:error:使用缓冲区数据解析json
    D.XML解析分为三种:SAX解析、PULL解析和DOM解析


    题解:D

    A:XML数据结构只能有一个根节点,但是可以嵌套
    B: JSONObjetWithData:options:error: 使用缓冲区数据来解析
    C: writeJSONObject:toSteam:options:error: 使用流来解析

    3.已知两个一维模式类别的类概率密度函数为:

    先验概率P(ω1)=0.6;P(ω2)=0.4,则样本{x1=1.35,x2=1.45,x3=1.55,x4=1.65}各属于哪一类别?

    A.X4 ∈ w2
    B.X3 ∈ w1
    C.X2 ∈ w1
    D.X1 ∈ w1

    题解:A B C D

    本题中,要判断 xi 属于w1,还是w2,就是判断 p(w1 | xi)  和 p(w2 | xi)的大小关系。即在xi已经发生的情况下,xi 属于哪个类别(w1 ,w2)的可能性更大。
    p(w1 | xi) = p(xiw1) / p(xi) = p(xi | w1) * p(w1) / p(xi) = 0.6*(2 - xi) / p(xi)   // 因为xi都在 (1,2)范围
    p(w2 | xi) = p(xiw2) / p(xi) = p(xi | w2) * p(w2) / p(xi) = 0.4*(xi - 1) / p(xi)   // 因为xi都在 (1,2)范围
    上面两等式相减,得:
    delta = p(w1 | xi) - p(w2 | xi) = (1.6 - xi) / p(xi)
    所以,在上诉样本中,大于1.6的,属于w2,小于1.6的,属于w1。
     
    4.程序员小李通过管道统计prog.c函数中for语句通过的次数,需要使用的指令分别是

    A.vi 
    B.grep
    C.wc
    D.sort

    题解:B C

    grep, Global Regular Expression Print, 使用正则表达式搜索文本 , 并把匹配的行打印出来 .
    wc, word count, 统计指定文件中的字节数 , 字数 , 行数 , 并将统计结果显示输出 .

    5.请将下列构造函数补充完整,使得程序的运行结果是5

    #include<iostream>
    using namespace std;
    class Sample{
        public:
            Sample(int x){
                ________
            }
            ~Sample(){
                if(p) delete p;
            }
            int show(){
                return *p;
            }
        private:
            int*p;
    };
    int main(){
        Sample S(5);
        cout<<S.show()<<endl;
        return 0;
    }
    

    A.*p=x;
    B.p=new int(x);
    C.*p=new int(x);
    D.p=&x;

    题解:B

    D : p = &x; 表示的是,对x取地址,赋值给指针p,那么p 将指向 x 的那块内存空间,但是 x 是形式参数(也有人说是方法参数,都可以),函数调用完了之后,内存就释放了,所以再返回 *p(即取出那块内存空间的值),已经找不到了。所以错误。
    A :*p = x; 表示的是 将 x 的值赋值给 P 所指向的空间,而p之前并没有指向任何地方,这个操作将是非法的。
    C:*p = new int(x); 这个操作同 A 的结果一样。
    B : p = new int(x); new int(x) 新申请空间,调用完后不释放空间,所以将地址赋值给p 则p 指向了这段新申请内存空间,所以当做 *p 返回时,即取出p所执行空间的值,所以会输出5

    9.关于解释系统的叙述中,正确的是()

    A.解释程序不是直接执行,而是转换成机器可识别码之后才能执行
    B.使用解释系统时会区分编译阶段和运行阶段
    C.目标程序可以脱离其语言环境独立执行,使用比较方便、效率较高
    D.一般来说,建立在编译基础上的系统在执行速度要优于建立在解释执行基础上的系统

    题解:A D

    A: 计算机不能直接理解任何除及其语言以外的语言,所以必须要把程序员所写的程序语言翻译成机器语言,计算机才能执行程序。将其他语言翻译成机器语言的工具,被称为编译器。 编译器翻译的方式有两种:一个是编译,一个是解释,相对应的是编译型语言和解释型语言。
    B:编译语言程序执行分为编译、执行两个阶段
    C:编译语言如JAVA是跨平台语言,编译一次可以在别的系统中不需再次编译直接执行
    D选项:编译语言首先将源码编译成字节码或者编译成二进制码 ,C就是把源码编译成二进制码,Java编译成字节码。编译语言执行的效率往往比较高。因为它会对编译好的代码直接执行,而编译好的代码已经接近机器语言,无需再去做解释的工作。 解释性语言不同,在执行的时候才把源代码调到执行它的地方,比如是引擎或者解释器,调用一句执行一句。

    10.在一个10阶的B-树上,每个树根结点中所含的关键字数目最多允许为( )个,最少允许为( )个。

    A.10,5
    B.9,4
    C.8,3
    D.7,6

    题解:B

    最多M-1  最少M/2-1 向上取整

    11.下列程序编译时会出现错误,请根据行号选择错误位置( )

    #include <iostream>
    using namespace std;
    class A{
      int a1;
    protected:
      int a2;
    public:
      int a3;
    };
    class B: public A{
      int b1;
    protected:
      int b2;
    public:
      int b3;
    };
    class C:private B{
      int c1;
    protected:
      int c2;
    public:
      int c3;
    };
    int main(){
      B obb;
      C obc;
      cout<<obb.a1;//1 a1是A私有的
      cout<<obb.a2;//2 a2是A开放给派生类使用的,客户代码不能使用
      cout<<obb.a3;//3
      cout<<obc.b1;//4 C是私有继承于B,不能使用B的成员
      cout<<obc.b2;//5 同上
      cout<<obc.b3;//6 同上
      cout<<obc.c3;//7
      return 0;
    }
    

    A.1,2
    B.2,5,7
    C.3,4,7
    D.4,5,6

    题解:A D

    类的继承后方法属性变化:

    private 属性不能够被继承。

    使用private继承,父类的protected和public属性在子类中变为private;

    使用protected继承,父类的protected和public属性在子类中变为protected;

    使用public继承,父类中的protected和public属性不发生改变;

    private, public, protected 访问标号的访问范围:

    private:只能由1.该类中的函数、2.其友元函数访问。
    不能被任何其他访问,该类的对象也不能访问。

    protected:可以被1.该类中的函数、2.子类的函数、以及3.其友元函数访问。
    但不能被该类的对象访问。

    public:可以被1.该类中的函数、2.子类的函数、3.其友元函数访问,也可以由4.该类的对象访问。

    注:友元函数包括3种:设为友元的普通的非成员函数;设为友元的其他类的成员函数;设为友元类中的所有成员函数。

    12.一磁带机有9道磁道,带长700m,带速2m/s,每个数据块1k字节,块间间隔14mm。如果数据传输率为128000字节/秒,求记录位密度为()字节/m.

    A.500000
    B.64000
    C.1000000
    D.12800

    题解:B

    因为 数据传输率(C)=记录位密度(D) x 线速度( V )
    所以 D=C/V= 128000/2=64000

    13.以下几条路由,10.1.193.0/24,10.1.194.0/24,10.1.196.0/24,10.1.198.0/24,如果进行路由汇聚,则能覆盖这几条路由地址的是()

    A.10.1.192.0/22
    B.10.1.200.0/22
    C.10.1.192.0/21
    D.10.1.224.0/20

    题解:C

    10.1.193.0的二进制:00001010.00000001.11000 001.00000000
    10.1.194.0的二进制:00001010.00000001.11000 010.00000000
    10.1.196.0的二进制:00001010.00000001.11000 100.00000000
    10.1.198.0的二进制:00001010.00000001.11000 110.00000000
    子网掩码为:11111111.11111111.11111 000.00000000 (十进制为255.255.248.0)即可覆盖。
    子网掩码是用来划分主机号和网络号,上面的二进制中只有001, 010, 100, 110这三位以后不同。
    取前面21位相同为网络号,后面11位为主机号。
    故为: 00001010.00000001.11000 000.00000000 (10.1.192.0)
    子网掩码为 11111111.11111111.11111 000.00000000 (255.255.248.0, 缩写为21,网络位占了21个位置)

    以上题解解析来自牛客网  

      

    彼时当年少,莫负好时光。
  • 相关阅读:
    Server Tomcat v8.5 Server at localhost failed to start.
    使用bootstrap中的bootstrapValidator,验证ckeditor富文本框不为空
    百度WebUploader上传图片,图片回显编辑,查看
    百度WebUploader上传图片
    做webapp静态页面的一些积累
    ztree插件的使用
    highcharts曲线图
    ajax的表单提交,与传送数据
    一条数据中需要遍历多条数据,页面遍历方法
    在页面中使用拼接字符串的方式显示动态加载的数据
  • 原文地址:https://www.cnblogs.com/l609929321/p/15118804.html
Copyright © 2011-2022 走看看