考研模拟面试-题目【攻略】

考研模拟面试-题目【攻略】

前言

2023-10-19 12:00:57

以下内容源自《考研模拟面试-答案》
仅供学习交流使用

版权

禁止其他平台发布时删除以下此话
本文首次发布于CSDN平台
作者是CSDN@日星月云
博客主页是https://jsss-1.blog.csdn.net
禁止其他平台发布时删除以上此话

推荐

如果简历的话,看一下简历

以下题目都是本人亲自想出来的

如果你能信手拈来,那你绝对没有问题的。

考研模拟面试-题目

前面的问题

请简单的自我介绍一下

你的家乡是哪?(请用英文介绍一下你的家乡)

本科专业是什么?(如果有,你为什么转专业?

你是如何学习你的专业的?(考查学习方法)

遇到问题,你通常是怎么解决的?(考查解决困难的方法)

自己解决不了怎么办?查资料,问别人?

建议:3小时期限解决不了,就问其他人。

通用问题

你学过什么编程语言?

你认为他们之间的区别是什么?
如果提到了面向对象:
可问:你是怎么理解面向对象的
提示:特点或者其他理解都行

你本科课程的专业课是什么?

你认为你学的最好的一门课程是什么?

专业题

根据他的简历和问题的回答,

问其中一个或几个

数据结构

你学过什么数据结构

栈和队列的区别

字符串的匹配算法

提示:BP算法和KMP算法

跳转:next手写题

树的表示法

提示:双亲表示法,孩子表示法,兄弟孩子表示法

树的遍历算法

提示:前序,中序,后序

问给定哪些就可以确定二叉树?

跳转:手写题

二叉树和森林的转换

哈夫曼树的创建算法

跳转:手写题

图的存储算法:

提示:邻接矩阵和邻接表

区别:稀疏图和稠密图

最短路径的算法

提示:Dijkstra和Floyd

最小生成树的生成算法

提示:Prim和Kruskal

区别:稀疏图和稠密图

拓扑排序算法

提示:找到入度为0的点入栈,

如果栈不为空,从栈中弹出,并删除他所对应的边,如果入度变为0就入栈

判断:栈是否为空和结点是否全部遍历

有哪些查找算法

提示:顺序,折半,hash

跳转:手写题

有哪些稳定的排序算法

提示:冒泡、插入、归并、基数

冒泡排序的优化

提示:没有交换就返回

快速排序的过程和特点,时间复杂度:O(nlog(n))

特点:第n趟排序至少有n个数到其最终位置上

跳转:手写题

计算机网络

计算机网络有哪几层?

各层的功能和协议

IP地址的分类

为什么出现无分类的

如果提到了IPv4的地址不够用,

可问:除了无分类还有哪些技术解决不够用?

提示:IPv6

课文:IPv6的地址大小是IPv4的多少倍?

提示:128/32=4倍

跳转:手写题

UDP和TCP的区别?

TCP的三握四挥

TCP如何保证可靠性

DNS的过程

Http的优化

Http和Https的区别

操作系统

有哪些进程调度算法

跳转手写题

你对虚拟内存的理解

有哪些页面置换算法

跳转手写题

有哪些磁盘调度算法

数据库

left join和right join的区别

数据库的三大范式

有没有需要违反范式的设计

数据库事务及其特性

网络安全

对称加密和非对称加密算法的区别

有哪些算法

手写题

数据结构

前序和中序给出后序

前序遍历A-B-D-F-G-H-I-E-C

中序遍历F-D-H-G-I-B-E-A-C

后序遍历F-H-I-G-D-E-B-C-A

前序(根左右),中序(左根右),后序(左右根)

已知一颗二叉树的先序遍历结果ABDGCEF,则其可能的后序遍历结果为()。

A GDBEFCA

B DGBAECF

C BGECFDA

D BAGDECF

字符串"abaabcabc"的next值为()

Hello World的哈夫曼编码

哈希表的平均查找长度

10 24 32 17 31 30 46 47 40 63 49
哈希表:0~17
哈希函数:n%16
哈希冲突:index=i+1
平均查找长度AVL

假设一个数组采用快速排序,则下面的选项中,不可能是第4趟排序结果的是
A 5,2,4,9,10,12,14
B 14,11,9,10,6,4,2
C 2,4,11,13,10,14,18
D 6,8,10,12,14,2,4

操作系统

P1,P2,P3,P4四个进程到达时间和运行时间如下所示,则使用FCFS调度算法则平均周转时间是()

进程 到达时间 运行时间
P1 0 7
P2 2 4
P3 4 1
P4 5 4

总共有70,先分配20,再分配35,回收20,在分配13,再分配11,采用最佳适应算法,最大的空闲区容量是多少

计算机网络

假设某网络块192.168.112.0中存在3台主机 A 、 B 、 C 。其中主机 A 的 IP 地址为192.168.112.40,主机 B 的 IP 地址为192.168.112.72,主机 C 的 IP 地址为192.168.112.100,如果主机 A 、 B 、 C 分别属于不同的网段,且 A 、 B 、 C 共同的子网码是255.255.255.224。则下列可能与主机 A 属于同一网段的 IP 地址有哪些(米哈游 2023/08/13)

A 192.168.112.32

B 192.168.112.36

C 192.168.112.40

D 192.168.112.60

当前的cwnd=8,下一个RTT之后可能会是多少

代码题

用你熟悉的语言实现?(最好是C语言)

基础代码题

请用链表实现一个栈

提示:实现入栈、出栈、取栈顶元素

c 复制代码
#include<stdio.h>
#include<stdlib.h> 
#define FALSE 0
#define TRUE 1

//链栈的C语言定义如下。
typedef int DataType;
typedef struct Stacknode{
	DataType data;
	struct Stacknode * next;
}slStacktype;

// 初始化
slStacktype* Init(){
	slStacktype *p;
	if((p=(slStacktype * )malloc(sizeof( slStacktype)))==NULL) 
	 	return NULL;
	return p;
} 

//(1)入栈操作
//将元素x压入链栈top中
//要求:成功返回TRUE 失败返回FALSE 
int PushLstack(slStacktype * top, DataType x){	

}

//(2)出栈操作
//从链栈top中删除栈顶元素
//要求:成功返回元素 失败返回-1 
DataType PopLstack(slStacktype * top){

}

//取栈顶元素
//要求:成功返回元素 失败返回-1 
DataType GetLsPop(slStacktype * top){

}

//测试 
int main(){
	slStacktype *sl=Init();
	
	int x=1;
	PushLstack(sl,x);
	
	int y=GetLsPop(sl);
	printf("%d\n",y);//1 
	
	int z=PopLstack(sl);
	printf("%d\n",z);//1
	
}

请用数组实现一个循环队列

提示:实现入队、出队、判断队空

补充:

解决假溢出问题的三个方法

来自数据结构算法习题三的综合体中的7 8

  1. 少用一个元素空间:(rear+1)%MAXSIZE==front
  2. 设置队尾元素位置rear和队中元素的个数quelen
  3. 设置标志位tag,区别队满队空
c 复制代码
#include<stdio.h>
#include<stdlib.h> 
#define FALSE 0
#define TRUE 1


#define MAXSIZE 10
//下面的循环以列及操作依据少用个元素空间来实现
//循环队列的类型定义及基本运算如下。
typedef int ElemType;
typedef struct{	
	ElemType elem [MAXSIZE];//队列的存储区
	//队头队尾指针
	int front, rear;	
}CSeQueue;//循环队列


//(1)置空队
CSeQueue * IniseQueue(){
	CSeQueue * q=(CSeQueue *)malloc(sizeof(CSeQueue));
	q->front=q->rear=MAXSIZE-1;
	return q;
}

//(2)入队
//要求:入队失败返回 FALSE 成功返回 TRUE
int InSeQueue( CSeQueue * q,ElemType x){

}

//(3)出队
//要求:出队失败返回 FALSE 成功返回 TRUE
int OutSeQueue( CSeQueue *q , ElemType *x){

}

//(4) 判断队空
//要求:队非空返回 FALSE 空返回 TRUE
int EmptySeQueue(CSeQueue *q){

} 

int main(){
	CSeQueue *cs=IniseQueue();
	
	int x=1;
	InSeQueue(cs,x);
	printf("%d\n",EmptySeQueue(cs));//0
	
	int x0;
	OutSeQueue(cs,&x0);
	printf("%d\n",x0);//1
	
	printf("%d\n",EmptySeQueue(cs));//1
	
}

实现一个Hash表

提示:除留余数法+开放地址法

可问:平均查找长度

提示:编写[算法8-12]哈希表的查找HashSearch

c 复制代码
#include<stdio.h>
#include<stdlib.h>
#define HASHSIZE 11
#define INIT -1
typedef int otherdata; 
typedef struct{
	int key;
	otherdata other;
}Datatype;


// [算法8-10]采用除留余数法构造哈希函数
int HashFunc(int key){
	return key%HASHSIZE;
}
//[算法8-11]采用线性探测再散列处理冲突
int Collision(int di){
	return(di+1)%HASHSIZE;
}
//[算法8-12]哈希表的查找
int HashSearch(Hashtable ht, Datatype x){

}

//[算法8-13]  哈希表的插入
int HashInsert( Hashtable ht,Datatype x)  {
	
	int address;
	address=HashSearch(ht,x);  
	if(address>=0)return 0;
	int times=1;
	address= HashFunc(x.key);//计算散列地址
	while(ht[address].data.key!=INIT){
		address=Collision(address);//没找到,处理冲突
		times++;
	}
		
	ht[address].data=x;
	ht[address].times=times;
	return 1;
}
//[算法8-14]哈希表的创建

void Createht(Hashtable ht, Datatype L[],int n){
	int i;
	for(i=0;i<HASHSIZE;i++){
		ht[i].data.key=INIT;
		ht[i].times=0;
	}
	
	for(i=0;i<n;i++)
		HashInsert(ht,L[i]);

}



//输出
void output(Hashtable ht){
	printf("输出散列表\n") ; 
	int i;
	printf("散列地址 关键字值 比较次数\n"); 
	for(i=0;i<HASHSIZE;i++){
		printf("%8d %8d %8d\n",i,ht[i].data.key,ht[i].times);
	}
} 
void CreateData(Datatype L[],int data[],int n){
	int i;
	for(i=0;i<n;i++){
		L[i].key=data[i];
	}
} 
void printData(Datatype L[],int n){
	int i;
	for(i=0;i<n;i++){
		printf("%d ",L[i].key);
	}
}
// 19,01,23,14,55,68,11,82,36
int main(){
	Hashtable ht;
	Datatype L[9]={0};
	int data[9]={19,1,23,14,55,68,11,82,36};
	CreateData(L,data,9);
	printData(L,9); 

	Createht(ht,L,9);
	output(ht);
	return 0;
}

其他代码题

回文或括号匹配

实现计算器:操作数栈和操作符栈

实现KMP算法

二叉树的遍历算法(非递归)

实现哈夫曼树

实现图的遍历

实现拓扑排序

实现最短路径

实现折半查找

实现快速排序

后面的问题

你认为你最有荣誉感或成就感的一件事?

你对自己的评价

对你最有帮助的人

你最敬佩的老师或同学,敬佩的点是什么

如果是班干部,可问:你认为怎么做好一个班干部?

你为什么选择我们学校?

你对研究生生活的期待是什么样的?

补充题目

你有什么反问我的吗?

你有什么其他问题想问后面的同学吗?

给我的题库做补充。

最后

我们都有光明的未来

祝大家考研上岸
祝大家工作顺利
祝大家得偿所愿
祝大家如愿以偿
点赞收藏关注哦

相关推荐
网络安全queen1 小时前
渗透测试面试问题
面试·职场和发展
测试老哥3 小时前
功能测试和接口测试
自动化测试·软件测试·python·功能测试·测试工具·职场和发展·接口测试
陈序缘4 小时前
Ubuntu下PyTorch开发环境配置
linux·pytorch·ubuntu·职场和发展
sjsjs115 小时前
【多维DP】力扣576. 出界的路径数
算法·leetcode·职场和发展
雾月557 小时前
LeetCode 1768 交替合并字符串
算法·leetcode·职场和发展
简单的东西为什么越来越复杂9 小时前
Java Set的理解
面试
C182981825759 小时前
面试241228
面试·职场和发展
啥都想学的又啥都不会的研究生10 小时前
redis相关问题
java·数据库·redis·笔记·学习·缓存·面试
GISer_Jing10 小时前
Javascript数据结构常见面试题目(全)
javascript·数据结构·面试
Pandaconda10 小时前
【Golang 面试题】每日 3 题(八)
开发语言·笔记·后端·面试·职场和发展·golang·go