精华内容
下载资源
问答
  • 深圳大学计算机与软件学院 907 数据结构与算法历年考研真题答案汇编 最新资料 WORD 格式可编辑修改 目 录 2013 年深圳大学计算机与软件学院 831 数据结构与算法考研真题 . 2012 年深圳大学计算机与软件学院 819 数据...
  • 2021 年江南大学 833 数据结构与算法设计考研精 品资料 之历年真题汇编及考研大纲 主编掌心博阅电子书 第 1 页 共 16 页 特别说明 本书为 2021 年江南大学 833 数据结构与算法设计考研精品资料之历年真题汇编及考研...
  • 目 录 2013年中国传媒大学文学院706算法与数据结构考研真题 2012年中国传媒大学文学院706算法与数据结构考研真题 2011年中国传媒大学文学院706算法与数据结构考研真题 2010年中国传媒大学文学院705算法与数据结构...
  • 2021 年江南大学 833 数据结构与算法设计考研精 品资料 之历年真题汇编及考研大纲 主编掌心博阅电子书 第 1 页 共 16 页 特别说明 本书为 2021 年江南大学 833 数据结构与算法设计考研精品资料之历年真题汇编及考研...
  • 2021 年江南大学 833 数据结构与算法设计考研精 品资料 之历年真题汇编及考研大纲 主编掌心博阅电子书 第 1 页 共 16 页 特别说明 本书为 2021 年江南大学 833 数据结构与算法设计考研精品资料之历年真题汇编及考研...
  • 2021 年江南大学 833 数据结构与算法设计考研精 品资料 之历年真题汇编及考研大纲 主编掌心博阅电子书 第 1 页 共 16 页 特别说明 本书为 2021 年江南大学 833 数据结构与算法设计考研精品资料之历年真题汇编及考研...
  • 注意:所有答案必须写在答题本上,不得写在...1、算法算法的特性 2、树的度及深度 3、完全二叉树 4、索引文件 5、强连通性 二、选择题(共30分,每题2分) 1、设核S和队列Q的初始状态均为空,元素ABCDEFG 依...

     注 意 :所 有 答 案 必 须 写 在 答 题 本 上 , 不 得 写 在 试 题 纸 上 , 否 则 无 效 。

    一 、名词解释 ( 共 20 分 ,每题 4 分)

    1、算法及算 法的特性

    2 、树的度及深度

    3、完全二叉树

    4、索引文件

    5、强连通性

    二 、选择题 ( 共 30 分 ,每题 2 分)

    1、设核 S 和队列 Q 的初始状态均为 空 ,元 素 ABCDEFG 依次进技 S。若 每个 元素 出校后立即进入队列 Q,且 7 个元 素的出队顺序是 BDCFEAG,则核 S 的容量 至少是:

    A. 1 B. 2 C. 3 D.  4

    2 、 已知一棵完全二叉树的第六 层 ( 根为 第一层〉 有 8 个叶子结点 ,则完 全 二叉树的结点个数最多是 :

    A. 39 B. 52 C. 111 D. 119

    3 、下列叙述中不符 合 m 阶 B 树定义要求的是 :

    A. 根结点最多有 m 棵子树 B. 所有叶结点在同 一层上

    C. 各结点内关键 字均升序或降序排列 D. 叶结点之间 通过指针链接

    4 、若无向图中含有 7 个顶点 ,贝。保证图在任何情 况下都是连通的 ,需要的 边数最少是 :

    A . 6 B. 15 C. 16 D. 21

    5、对一组数据 ( 7 , 17 , 21,93 , 10 , 16 ) 进行排序 ,若前三趟排序结果如 下, 则采用的排序方法是 :

    第一趟 :7 , 17 ,21, 10 , 16, 93

    第 二趟 :7 , 17 , 10, 16 ,21, 93

    第 二趟 :7 , 10 , 16 ,17 ,21,93

    A . 冒泡排序 B. 希尔排序 C. 归并排序 D. 基数排序

    6、已知一才果有 2011个结点的树 ,其叶结 点个数 为 116 ,该树 对应的二叉树 中无右孩子的结点个数是 :

    A. 115 B. 116 C. 1895 D. 1896

    7 、已知字符 串 S 为 “abaabaabacacaabaabcc" . 模式串 t 为 “abaabc ” ,采 用 KMP 算法进行匹配 ,第一次出现 “ 失自己 ” (s [i]   !=  t [i] )  时,i=j 习,则下次 开始匹配时 ,i和 j  的值分别是 :

    A. i= l ; j=O ; B. i二5; j =O ; C. i=5 ; j =2 ; D . i=6 ; j=2 ;

    8、用哈希 ( 散列 〉 方法处理冲突 ( 碰撞〉 时可能出现堆积 ( 聚集) 现象 , 下列选项 中,会受堆积现象直接影响的是  :

    A. 存储效率 B. 数列函数

    C. 装填 ( 装载 〉 因子 D. 平均查找长度

    9、循环队列放在一维数组  A [O ···M-1] 中,endl  指向队头元 素 ,end2  指向 队尾元素的后一个位置 。假设队列 两端均可 进行入队和出队操作 ,队列中最多 能容纳 M-1 个元素 。初始时为 空 。下列判断队空和队满的条件中 ,正确的是 :

    A . 队空 :endl == end2 ; 队满:endl == (end2+1) mod M

    B.  队空 :endl  ==  end2 ; 队满:end2  ==  (endl+1) mod   (M-1)

    c.  队空 :end2  ==   (endl+l) mod  M; 队满:endl  ==   (end2+1) mod  M

    D. 队空 :endl == (end2+ 1) mod M;队满:end2 == (end 1+1) mod (M- 1)

    10、非 空 的循环单链表 head 的尾结点 ( 由 p 所指向〉 满足 :

    A .   P一>next==N1JLL ; B.  p==NULL;

    C.  p->next==head ; D. p==head

    11、查找效率最高的 二叉排序树是 :

    A .  所有结点的左 子树都为 空 的二叉排序树

    B. 所有结点的右子树都为 空的二叉排序树

    c. 平衡二叉树

    D. 没有左子树的二叉排序树

    12、下面关于求关 键路径的说法不正确的 是:

    A . 求关键路径是以拓扑排序为基础的

    B. 关键活动一定位于关键路径上

    C. 一个事件的最早开始时间  同 以该事件为 尾的弧的活 动最早开始时

    间相同

    D. 一个事 件的最迟开 始时间 为 以该事件为 尾的弧的活 动 最迟开 始时

    间与该活 动的持续时间的差

    13 、在一个单链表 中,若 q 结点是 p 结 点的前驱结点 ,若在 q 和 p 之 间插 入结点 s,则执行 :

    A .   P甲>next=s一>next ; s->nex t=p:

    B.   s->next=p一>next ; p  >next=s ;

    C. P一>next=s ; s一>next=q;

    D.   q一>next=s ; s->next=p;

    14 、设有 一个对称矩阵 A ,采用压 缩存储方式 ,以行序为 主序存储 ,all为 第一个元 素 ,其存储地址为 1,每个元 素 占一个地 址空 间,则 a85 地 址为 :

    A. 23 B. 33 C. 18 D. 40

    15、就平均查找速度而言,下列几种查找速度从慢 至快的关系是 :

    A. JI顶序

    折半 哈希 分块

    B. 分块 折半 哈希 顺序

    C. 顺序

    分块 折半 哈希

    D. 顺序 哈希 分块 折半

    三 、填空题 ( 共 20 分 ,每题 2 分)

    1、广义表 A= (x ,旬,b, c , d) ) 的表尾是一一一

    注 意 :所 有 答 案 必 须 写 在 答 题 本 上 , 不 得 写 在 试 题 纸 上 , 否 则 无 效 。

    2、在双循环链表中 ,删除指针 p 所指结 点的语句序列是一一一和一一一。

    3、快速排序是一一一排序 改进后的结果 。

    4 、求解一个图的单源和多 源最短路径的算法分别是一一一和 Floyd  算法 。

    5、通常称 表示前驱和后继的指针叫做一 一一’ 而这种使树中 结点的空指针 成 员存放前驱或后继信息的过程叫做一 一一。

    6、图的 一一一优先搜索类似 于树的层次遍历 。

    7 、设给定权值总数有 n 个 ,其哈夫曼树的结 点总数为 一一一。

    8、希尔排序 、快速排序和冒泡排序中 一一一是稳定的排序 方法 。

    9 、 堆排序的 两个重要步 骤其 一是一一一’ 其二是调整堆 。

    10、KMP 算法中 ,串 'ababaaababaa ’ 的 next  数组为一一一。

    四、应用题 ( 共 50 分,第 1-6 题每题 7 分 ,第 7 题 8 分) l、给定二叉树的 两种遍历 序列 ,分别是 : 前序遍历序列 :EBIDGCAH F;

    中序遍历序列 :EIGDCBHFA ,

    ( 1) 试画 出二叉树;

    ( 2 ) 并给出二叉树的后序 遍历序列 。

    2、下图是一个无向带权图 ,请按照 Prim 算法从 A  节 点出发构造一棵最小 生成树 ,并画出其 生成过程 。

    3、给定一组数列 ( 10, 18 , 16, 25 , 6 , 9 , 16) 分别代表 字符 A, B, C , D , E , F, G  出 现的频 率 ,试画 出哈夫曼树的构造过程 ,并给出各 字符的编码值 。

    4 、 已知长度为 12 的表 ( jan , f eb, mar , apr , may , j une , ju ly , aug , sep, oct , nov , dec ) ,请按表中 元 素顺序构造 一棵二叉平衡树 ,并简 单的 画 出构造过程 。 其中 ,无旋转的调整可以直 接 画在一张图上 ,有旋转的调整请 单独 画图并备注 清楚。

     5 、给定关键 字序列 :15, 38, l l , 84 , 49, 20 , 7 , 33, l4 , 29 , 36 。请 写 出以下 3 种排序 方法 的第一趟 排序 结果 (1) 选 择排序 (2) 快速排序 (3) 增量 为 4 的希尔排 序 ;请写出建好一个大根堆的结果 ;请写 出第一趟堆排 序 以后的结果。

    注 意 :所 有 答 案 必 须 写 在 答 题 本 上 , 不 得 写 在 试 题 纸 上 , 否 则 无 效 。

    6 、设散列 表的长 度为 13 ,散列 函数为 H(k) =k%13 ,给定的关键码 序列 为

    19 ,13, 22 ,02, 68 , 15 ,84, 26 。试 画出用 线性探测法解决冲突 时所构 成的散列 表, 并求出平均查找长度 ASL 。

    7 、用 迪杰斯特拉 ( Dijk stra ) 算法 求下图 中 V l  顶点到其他个顶点的 最短 距离和最短路径 ,请根据下表补充完整的求解过程 。

    五 、程序设计题 ( 共 30 分 ,每题 10 分)

    l、设计一个求二叉树的宽度 的算法。

    2、已知一个带表头结点的线性链表 ,试写出用 直接插入排序方法将 其结点 按递增顺序排序的算法 ,算法 中要尽可 能少用辅助存储 空 间。

    3、请设计深度遍历图的非 递归算 法 。

    展开全文
  • 青岛大学921数据结构与算法基础真题,考研真题,青岛大学2019年硕士研究生入学考试试题B,学工办辛老师给的
  • 数据结构考研真题,收录了各个大学的考研数据结构与算法的真题并附有答案。
  • 目 录 第一部分 历年考研真题 2003年南开大学数据与算法综合基础考研真题 2004年南开大学数据与算法综合基础考研真题 第二部分 华中科技大学数据结构与算法分析考研真题 2006年华中科技大学软件学院451数据结构与...
  • 2020考研数据结构 408算法2013年真题

    千次阅读 2019-03-26 20:38:58
    第一步,现将首元素设为标记位flag,次数出现最多的元素设为maxELem,初始flag=数组首元素,flag将标记位一个一个的数组每个元素比较,若相等,count++, 第二步,将数组的第二个元素设为标记位,依次循环标记 第...


    1.

    第一步,现将首元素设为标记位flag,次数出现最多的元素设为maxELem,初始flag=数组首元素,flag将标记位一个一个的与数组每个元素比较,若相等,count++,

    第二步,将数组的第二个元素设为标记位,依次循环标记

    第三部,若第二次的比第一次的count大,将最大的次数count设为最多位数,在循环时就比较,同时将maxElem等于循环时的元素

    第四部,函数返回最多出现的次数,如果次数大于数组长度一半时,函数返回最多元素maxElem,否则返回-1


    #include<stdio.h>
    #define maxSize 100
    
    typedef struct Sqlist{
    	int data[maxSize];
    	int length;
    }Sqlist;
    int find(Sqlist &L){
    	int flag,count,min=0,zuiduo=0;
    	int arr[L.length];
    	for(int i=0;i<L.length;i++){
    		count=0;
    		flag=L.data[i];
    		for(int j=0;j<L.length;j++){
    			if(flag==L.data[j])
    			count++;
    		}	
    		if(count>min)
    		{
    			min=count;
    			zuiduo=L.data[i]; 
    		} 
    	 
    	}
         if(min>(L.length/2))
    		return zuiduo;
    	else
    		return -1;
    }
    
    int initSqlist(Sqlist &L){
    	int n;
    	 printf("顺序表要输入的个数:");
    	 scanf("%d",&n);
    	 printf("\n");
    	 L.length=n;
    	 for(int i=0;i<n;i++){
    	 	printf("输入第%d个元素:",i+1);
    	 	scanf("%d",&L.data[i]);
    	 }
    	 return n;
    }
    
    int main(){
    	Sqlist L;
    	initSqlist(L);
    	display(L);
    	find(L);
    	int p=find(L);
    	if(p!=-1) {
    			printf("最多元素%d",p);
    	}
    	else
    	printf("没有主元素"); 
    
    	
    } 

    3.时间复杂度:O(n^2)

    空间复杂度,O(n)

    此解不是最优解,但是按考研的思路走,时间复杂度O(nlog2n)可以拿11分,我写的O(n^2)虽然不是最优解,也可拿10分。性价比非常高!!!!

     

    展开全文
  • 更多西南交通大学真题,参考:西南交通大学计算机考研——数据结构真题系列 本文编译环境:VS2015。 一、考研题目 四、算法设计程序设计(30分,共3小题) 1、已知某双向链表结点的存储结构如图4所示,请按...

    更多西南交通大学真题,参考:西南交通大学计算机考研——数据结构真题系列

    本文编译环境:VS2015。

    一、考研题目

    四、算法设计与程序设计(30分,共3小题)

    1、已知某双向链表结点的存储结构如图4所示,请按要求完成如下问题。(12分)

    (1)写出该结点的存储结构定义,其中数据元素elem的类型为int.(2分)

    (2)编写函数创造一个带头结点的双向链表,并返回创建后的双向链表的头结点,其中结点元素的值及该链表结点的个数(不包括头结点)通过参数传递方式传递给该函数。(5分)

    (3)编写函数采用之间插入排序算法将创建后的双向链表从小到大的顺序排序。(5分)

    2、一颗具有n个结点的完全二叉树以一维数组作为其存储结构,编写程序实现对该完全二叉树进行先序遍历的算法。(8分)

    3、编写程序,实现将数组A[0……n-1]中所有奇数移动到所有偶数之前的算法,要求不另外增加存储空间,时间复杂度为o(n)。(10分)。

    二、真题解析

    第一题

    1、已知某双向链表结点的存储结构如图4所示,请按要求完成如下问题。(12分)

    (1)写出该结点的存储结构定义,其中数据元素elem的类型为int.(2分)

    typedef struct DLNode
    {
    	int elem;
    	struct DLNode *prior, *next;
    }DLNode;

    (2)编写函数创造一个带头结点的双向链表,并返回创建后的双向链表的头结点,其中结点元素的值及该链表结点的个数(不包括头结点)通过参数传递方式传递给该函数。(5分)

    DLNode* create(DLNode* &L, int a[], int len)
    {
    	L = (DLNode*)malloc(sizeof(DLNode));
    	L->next = NULL;
    
    	DLNode *s, *r, *prior, *next;
    	r = L;
    	for (int  i = 0; i < len; i++)
    	{
    		s = (DLNode*)malloc(sizeof(DLNode));
    		s->elem = a[i];
    		s->prior = r;
    		r->next = s;
    		r = s;
    	}
    	r->next = NULL;
    	return L;
    }

    补充:如果不给参数元素值和结点个数,改成从输入应该怎样实现?

    (3)编写函数采用之间插入排序算法将创建后的双向链表从小到大的顺序排序。(5分)

    DLNode* InsertSort(DLNode* head)
    {
    	if (head==NULL||head->next==NULL||head->next->next==NULL)
    	{
    		//如果链表为空,或只有一个结点,直接返回
    		return head;
    	}
    
    	DLNode *pcur, *pre, *pne;
    	//指向链表第一个元素
    	pre =head->next;
    	//指向链表第二个元素
    	pcur = pre->next;
    
    	while (pcur != NULL)
    	{
    		if (pre->elem < pcur->elem)
    		{
    			pcur = pcur->next;
    			pre = pre->next;
    		}
    		else
    		{
    			//从表头开始找,
    			pne =head;
    			//找到第一个大于pcur的位置
    			while ((pne->next != NULL) && (pne->next->elem < pcur->elem))
    			{
    				pne = pne->next;
    			}
    			//删除pcur
    			pre->next = pcur->next;
    			pcur->next->prior = pre;
    
    			//将pcur插入pne之后
    			pcur->next = pne->next;
    			pne->next->prior = pcur;
    			pne->next = pcur;
    			pcur->prior = pne;
    
    			//pcur指向下一个元素
    			pcur = pre->next;
    		}
    	}
    	
    	return head;
    }

     

    第二题

    2、一颗具有n个结点的完全二叉树以一维数组作为其存储结构,编写程序实现对该完全二叉树进行先序遍历的算法。(8分)

    //先序遍历二叉树
    void PreOderTravelsel(int* arr,int index,int len)
    {
    	printf("%d ",arr[index]);
    	//访问左子树
    	if (index*2<=len)
    	{
    		PreOderTravelsel(arr,index*2,len);
    	}
    	//访问右子树
    	if (index*2+1<=len)
    	{
    		PreOderTravelsel(arr,index*2+1,len);
    	}
    }
    
    

    如果对答案不是很懂,可以参考文章:二叉树数组存储:前序遍历、打印二叉树,这篇文章有详细测试代码

    第三题

    3、编写程序,实现将数组A[0……n-1]中所有奇数移动到所有偶数之前的算法,要求不另外增加存储空间,时间复杂度为o(n)。(10分)。

    void Reverse(int* arr,int len)
    {
    	int i=0,j=len-1,temp;
    	while (i<j)
    	{
    		while (i<j&&arr[i]%2==1)
    		{
    			i++;
    		}
    		while(i<j&&arr[j]%2==0)
    		{
    			j--;
    		}
    		if (i<j)
    		{
    			temp=arr[j];
    			arr[j]=arr[i];
    			arr[i]=temp;
    		}
    	}
    }
    

    更多西南交通大学真题,参考:西南交通大学计算机考研——数据结构真题系列

    展开全文
  • 更多西南交通大学真题,参考:西南交通大学计算机考研——数据结构真题系列 一、考研题目 1.设某堆栈的存储结构定义如下,请按要求完成如下问题。(10分) Typedef struct{  int *base;//栈底指针  int *top;...

    更多西南交通大学真题,参考:西南交通大学计算机考研——数据结构真题系列

    一、考研题目

    1.设某堆栈的存储结构定义如下,请按要求完成如下问题。(10分)

    Typedef struct{

       int *base;//栈底指针

       int *top;//栈顶指针

       int stacksize;//堆栈大小

    }SqStack;

    (1)编写程序穿点一个大小为256K的堆栈。(4分)

    (2)编写程序将堆栈中的元素按照栈底到栈顶从小到大的顺序排列。要求每次堆栈的操作必须符合堆栈的要求。(6分)

    2.某二叉树采用二叉链表的存储结构,请编写程序实现二叉树中所有节点的左右子树互换。要求:(12分)

    (1)写出二叉树二叉链表的存储结构定义。(2分)

    (2)基于(1)中的存储结构,编写函数创建一个二叉树,实现二叉树结点信息的录入。(4分)

    (3)编写函数实现二叉树中所有结点的左右子树互换。(6分)

    3.某序列采用链式存储结构进行存储,请编写程序采用直接插入排序算法实现该序列按从小到大的顺序排列。要求(共8分)

    (1)定义链表的存储结构。(2分)

    (2)编写函数采用直接插入排序算法将该序列按从小到大的顺序排列。(6分)

    二、真题解析

    1.第一题

    1.设某堆栈的存储结构定义如下,请按要求完成如下问题。(10分)

    Typedef struct{

       int *base;//栈底指针

       int *top;//栈顶指针

       int stacksize;//堆栈大小

    }SqStack;

    (1)编写程序穿点一个大小为256K的堆栈。(4分)

    (2)编写程序将堆栈中的元素按照栈底到栈顶从小到大的顺序排列。要求每次堆栈的操作必须符合堆栈的要求。(6分)

    Sqstack* sort(Sqstack &stack)
    {
    	Sqstack* res=NULL;
    	if (stack.top==stack.base)
    	{
    		//如果栈为空,直接返回
    		return res;
    	}
    	/*书上的用法编译出错,因为VC++不支持变长数组
    	数组必须声明为定长数组如a[4],或者使用new来创建动态数组
    	*/
    	int len = stack.stacksize;
    	//为数组a分配内存空间
    	int *a = new int[len];
     
    	//将栈中元素拷贝到数组中
    	int i = 0;
    	while (stack.base!=stack.top)
    	{
    		--stack.top;
    		a[i] = *stack.top;
    		i++;
    	}
        //对数组a中的元素进行排序
    	for (int  i = 0; i < len; i++)
    	{
    		for (int j = i+1; j < len; j++)
    		{
    			//栈底到栈顶从小到大,所以a[0]最大
    			if (a[i]<a[j])
    			{
    				int tmp = a[j];
    				a[j] = a[i];
    				a[i] = tmp;
    			}
    		}
    	}
    	
    	//将数组中的元素拷贝到栈结构中
    	for (int i = 0; i < len; i++)
    	{
    		stack.top--;
    		*stack.top = a[i];
    				
    	}
    	//释放数组a的内存空间
    	delete[] a;
    	res=&stack;
    	return res;
    }

    2.第二题

    2.某二叉树采用二叉链表的存储结构,请编写程序实现二叉树中所有节点的左右子树互换。要求:(12分)

    (1)写出二叉树二叉链表的存储结构定义。(2分)

    (2)基于(1)中的存储结构,编写函数创建一个二叉树,实现二叉树结点信息的录入。(4分)

    (3)编写函数实现二叉树中所有结点的左右子树互换。(6分)

    (1)二叉树二叉链表的存储结构定义

    第一小问,比较基础,直接考的课本上面的定义:

    typedef struct BiTree{
    	int data;
    	struct BiTree *lchild, *rchild;//左右孩子指针
    }BiTree;

    (2)基于(1)中的存储结构,编写函数创建一个二叉树,实现二叉树结点信息的录入

    真题给的答案第二问是错了,正确创建方式应该如下:

    #include <iostream>
    using namespace std;
    BiTree* CreateTree()
    {
    	BiTree* myTree;
    	int item;
    	cin >> item;
    	//0为叶子节点数据标志
    	if (item==0)
    	{
    		//若某一节点为叶子结点,则其左右子树均为NULL,0表示建空树
    		myTree = NULL;
    	}
    	else {
    		//先序创建一棵二叉树
    		myTree = new BiTree();
    		myTree->data = item;
    		myTree->lchild = CreateTree();
    		myTree->rchild = CreateTree();
    
    	}
    		
    	return myTree;
    
    }

    注:在本题中,采用的是先序创建,如果要中序创建,后序创建代码应该怎么写?

    (3)编写函数实现二叉树中所有结点的左右子树互换

    void Change(BiTree* T)
    {
    	BiTree *tmp;
    	while (T!=NULL)
    	{
    		tmp = T->rchild;
    		T->rchild = T->lchild;
    		T->lchild = tmp;
    		Change(T->lchild);
    		Change(T->rchild);
    	}
    	
    }

    3.第三题

    3.某序列采用链式存储结构进行存储,请编写程序采用直接插入排序算法实现该序列按从小到大的顺序排列。要求(共8分)

    (1)定义链表的存储结构。(2分)

    typedef struct LNode {
    	int data;
    	LNode* next;
    }LNode,*LinkList;

    (2)编写函数采用直接插入排序算法将该序列按从小到大的顺序排列。(6分)

    LNode* InsertSort(LNode* L) {
    
    	if (L==NULL||L->next==NULL||L->next->next==NULL)
    	{
    		//如果链表为空或只有一个结点直接返回
    		return L;
    	}
    	
    	LNode *pcur, *pre, *prior, *pHead;
    	pHead = L;
    	//指向链表第一个元素
    	pre = L->next;
    	//指向链表第二个元素
    	pcur =pre->next;
    	
    	while (pcur!=NULL)
    	{
    		if (pre->data < pcur->data)
    		{
    			pcur = pcur->next;
    			pre = pre->next;
    		}
    		else 
    		{
    			//从表头开始找,
    			prior = L;
    			//找到第一个大于pcur的位置
    			while ((prior->next != NULL) && (prior->next->data < pcur->data))
    			{
    				prior = prior->next;
    			}
    			//将pcur插入找到的位置上
    			pre->next = pcur->next;
    			pcur->next = prior->next;
    			prior->next = pcur;
    			pcur = pre->next;
    		}
    	}
    
    	return pHead;
    }
    

    更多西南交通大学真题,参考:西南交通大学计算机考研——数据结构真题系列

    展开全文
  • 2021 年南京大学 842 数据结构软件工程 操作系统和计算机网络考研核心题库之数据结 构与算法分析填空题精编 主编掌心博阅电子 特别说明 本书根据历年考研大纲要求并结合历年考研真题对该题型进行了整理编写涵盖了这...
  • 2021 年南京大学 842 数据结构软件工程 操作系统和计算机网络考研核心题库之数据结 构与算法分析填空题精编 主编掌心博阅电子 特别说明 本书根据历年考研大纲要求并结合历年考研真题对该题型进行了整理编写涵盖了这...
  • 2021年数据结构考研题库【名校考研真题+章节题库+模拟试题】第一部分 名校考研真题 一、选择题 二、综合应用题第二部分 章节题库 第1章 绪 论 第2章 线性表 第3章 栈和队列 第4章 树二叉树 第5章...
  • 2021 年南开大学人工智能学院 813 程序设计 与数据结构考研核心题库之数据结构算法与应 用单项选择题精编 主编掌心博阅电子 特别说明 本书根据历年考研大纲要求并结合历年考研真题对该题型进行了整理编写涵盖了这一...
  • 2021 年南开大学人工智能学院 813 程序设计 与数据结构考研核心题库之数据结构算法与应 用填空题精编 主编掌心博阅电子 特别说明 本书根据历年考研大纲要求并结合历年考研真题对该题型进行了整理编写涵盖了这一考研 ...
  • 其实1800题是2001年推出来的,当时编者把电子版免费分享给大家,却很少有人知道它也有纸质版本就是《算法与数据结构考研试题精析》。第二版是2007年最新出版的,对里面的题目进行了大量的更新,去掉了一些比较过时和...
  • 951数据结构复习规划 一、复习资料 《数据结构与算法分析》(荣政)《王道数据结构》+《天勤数据结构》西电数据结构期末题951历年真题951讲课+押题班二、复习规划 第一轮: 7月初至8月中旬。目标:攻克选择+判断+...
  • 此为南京邮电大学811数据结构考研真题+答案1999-2018(无2012),本人为2018年考研工科生,这门专业课几乎满分,其中上传的真题中2018年回忆版+答案最为珍贵(也是学得好才能全部回忆出来,哈哈!),除了3道选择题...
  • 目录 基础 c/c++ 代码优化及常见错误 ...除树和图外的数据结构可以使用STL: C++ STL的使用 数据结构 线性表 顺序表 循环左移(2010联考真题) 单链表 单链表相邻结点逆置(2019北邮考研真...
  • 考研历年真题【单选题】1.在数据结构中,从逻辑上可以把数据结构分成( C)。A、动态结构和静态结构B、紧凑结构和非紧凑结构C、线性结构和非线性结构D、内部结构和外部结构【单选题】2. 在数据结构中,从存储结构上可以...
  • 921数据结构与算法基础(纸质版):--------------------------------一、考研重点整理二、真题三、本科陈越数据结构期末试题5年+1年的期中试卷(带答案)四、新题型变化大纲整理(重中之重)五、数据结构复习题集六、十套...
  • 其实1800题是2001年推出来的,当时编者把电子版免费分享给大家,却很少有人知道它也有纸质版本就是《算法与数据结构考研试题精析》。第二版是2007年最新出版的,对里面的题目进行了大量的更新,去掉了一些比较过时和...
  • 计算机考研传说中的数据结构1800题,包含各大高校历年的数据结构考研真题,带目录可快速检索。
  • 其实1800题是2001年推出来的,当时编者把电子版免费分享给大家,却很少有人知道它也有纸质版本就是《算法与数据结构考研试题精析》。第二版是2007年最新出版的,对里面的题目进行了大量的更新,去掉了一些比较过时和...

空空如也

空空如也

1 2 3 4
收藏数 64
精华内容 25
关键字:

数据结构与算法考研真题

数据结构 订阅