科大讯飞2014届实习生招聘笔试题

来源:互联网 发布:网络诈骗的手段 编辑:程序博客网 时间:2024/04/29 20:03

说明:考试时间为60分钟。 题目是笔者刚考完回忆起来的,答案也只是笔者的一些见解,有不对的地方望大家指教。

1. 已知二叉树的前序遍历为ABCDEFGHIJ,中序遍历为CBEDAHGIJF,请画出其二叉树结构。



2.求一个整数数组的最大元素,用递归方法实现。

#include <iostream>  #include <cmath>  using namespace std;    int maxnum(int a[], int n)  {      if(n == 1)          return a[0];      if(n>1)      {          return max(a[0], maxnum(a+1,n-1));      }  }  int main()  {      int num[10] = {0,1,2,3,4,5,6,7,8,9};      cout<<maxnum(num,10)<<endl;      return 0;  }


3.什么是虚拟存储器?虚拟存储器的特点是什么?

虚拟存储器:在具有层次结构存储器的计算机系统中,自动实现部分装入和部分替换功能,能从逻辑上为用户提供一个比物理贮存容量大得多,可寻址的“主存储器”。虚拟存储区的容量与物理主存大小无关,而受限于计算机的地址结构和可用磁盘容量。特点:多次性、对换性、虚拟性。    多次性是指一个作业被分成多次调入内存运行,亦即在作业运行时没有必要将其全部装入,只需将当前要运行的那部分程序和数据装入内存即可;以后每当要运行到尚未调入的那部分程序时,再将它调入。    对换性是指允许在作业的运行过程中进行换进、换出,亦即,在进程运行期间,允许将那些暂不使用的程序和数据,从内存调至外村的对换区(换出),待以后需要时再将它们从外存调至内存(换进)。    虚拟性是指能够从逻辑上扩充内存容量,使用户所看到的内存容量远大于实际内存容量。
4.什么是this指针?其主要功能是什么?        this指针是类的一个自动生成、自动隐藏的私有成员,它存在于类的非静态成员函数中,指向被调用函数所在的对象的地址。全局仅有一个this指针,当一个对象被创建时,this指针就指向对象数据的首地址。        一种情况就是,在类的非静态成员函数中返回类对象本身的时候,直接使用 return *this;另外一种情况是当参数与成员变量名相同时使用this指针,如this->n = n (不能写成n = n)。
5.C++程序运行时有哪些常见的错误?解决方法是什么?6.在网络传输超大的文件(比如2G以上的文件),你的解决方案是什么?7.写出字符串类的必备构造函数和赋值运算符重载的实现方法。

8.已知一个整数数组A[n],写出算法实现将奇数元素放在数组的左边,将偶数放在数组的右边。要求时间复杂度为O(n)。

void partition(int A[], int n)  {      int x;      int i = 0;      int j = n-1;      while(i != j)      {          while( a[i]%2 == 1)              i++;          while (a[j]%2 == 0)              j++;          if(i < j)          {              x = a[i];              a[i] = a[j];              a[j] = x;          }      }  }




原创粉丝点击