王道数据结构
山东章鱼哥
这个作者很懒,什么都没留下…
展开
-
第二章 线性表 第二节 习题7
算法分析:1)对两个顺序表分别进行遍历比较大小,每次都把小的放入另一个新数组里,直到其中的一个数组完2)将另一个数组剩下的直接放到新的数组中去详细编码bool Merge(sqlist A,sqlist B,sqlist &C){ int len1=A.length(),len2=B.length(),len3=C.length(); int i...原创 2019-03-05 19:08:05 · 109 阅读 · 0 评论 -
【狮子数学】chapter3-09-反常积分(第69——71)
1.反常积分概念与计算2.反常积分敛散性判别原创 2019-05-20 22:57:36 · 282 阅读 · 0 评论 -
线性表
1.单链表1.1 结点描述 Lnode *p<=>linklist p1.2 结点实现1.3 基本操作1.3.1 赋值 注意几种情况 画图来理解结构第四种操作可能有断链的可能; 注意几种情况 画图来理解结构1.3.2 查找 头结点为第0个结点1.3.2.1 按序号查找(o(n)1.3.2....原创 2019-03-27 20:42:52 · 198 阅读 · 0 评论 -
数据结构第一章思维导图总结
原创 2019-03-23 19:35:10 · 1156 阅读 · 0 评论 -
【考研】数据结构-整体脉络以及操作
408广义表可以不看原创 2019-03-21 18:55:13 · 297 阅读 · 0 评论 -
2.3 线性表的链式表示-知识分析以及选择题分析
1.链式存储的线性表,不需要使用地址连续的存储单元;其插入删除不需要移动元素,只需要修改指针;2.线性表的链式存储又称单链表,其为非随机存取的存储结构,在查找某个特定的元素时,要从表头开始查找3.双链表比起单链表的优势在于能够更加方便的访问前驱结点了4.对于循环单链表而言,只设一个尾指针,这样对表头与表尾的操作均为O(1);1.答案选:B关于2:链式存储用指针表示逻辑结...原创 2019-03-08 21:15:54 · 325 阅读 · 0 评论 -
第二章 线性表 第二节 习题6
题目:注:本题删除的条件改为了删除重复的元素,同样删除后,还是要向前移动算法分析:使用两个计数器来进行表示1)在顺序表中遍历,一直找到不等的那个元素为止;2)将不等的元素前移至i+1的位置上去;详细编码:void Del(sqlist A[]){ int len=A.length(); int i,j; for(i=0,j=1...原创 2019-03-04 20:39:11 · 120 阅读 · 0 评论 -
第二章 线性表 第二节 习题5
题目:注:本题与第四题又有区别,本题只是一个单纯的线性表而已,并不是有序的算法思路:通过遍历的方法,扫描不满足条件的元素,类似于第三题详细编码:bool Del(sqlist A,int s,int t){ int len=A.length(); if(len==0||s>t) return false; int k=0;...原创 2019-03-04 20:17:51 · 96 阅读 · 0 评论 -
第二章 线性表 第二节 习题4
注意:本题是有序的,顺序表,所以删除的元素是相连的整体,本题的答案也是删除包括s,t的算法分析:1)先寻找>=s的第一个元素,然后再寻找>t的第一个元素2)再将>t之后的元素前移即可详细编码:bool Del(sqlist A,int s,int t){ int len=A.length(); if(len==0||s>t) ...原创 2019-03-04 20:08:28 · 157 阅读 · 0 评论 -
第二章 线性表 第二节习题3
题目:注:本题不仅仅是要删除所有值为x的数据元素,还要用后面的元素来顶上前面的位置算法分析:(1) 当判断条件为相等时:1)使用一个计数器来记录哪些等于x的元素2)当出现不等的情况时,把当前元素前移(i-k)位;(2)当判断条件为不相等时:1)使用一个计数器来记录,当出现不等的情况时,并将这个元素保存在计数器的原有的位置上起来2)将计数器++;详细编码:...原创 2019-03-04 19:34:06 · 175 阅读 · 0 评论 -
第二章 线性表 第二节 单项选择题汇总
1.答案选A顺序存储的优点是存储密度大(都是顺序的存放着)其中,B,C是链表的优点2.答案选A随机存取:暗指可由一堆数字之中,能够持续访问N值的能力,而且除了数组(及相关结构,例如动态数组)以外,绝少数据结构能够作出类似程序。即可以直接访问N值顺序存取:首先顺序存取不是一种存储方式而是读写方式顺序存取在读取N值时必须访问前面N-1个值,才能访问到...原创 2019-03-06 16:25:00 · 114 阅读 · 0 评论 -
第二章 线性表 第二节习题2
题目:注意题干,要求空间复杂度为O(1),不是时间复杂度算法思想:将顺序表对半开,前半部分的元素与后半部分进行交换详细代码:void Reverse(Sqlist L[],int n){ Elemtype temp; for(int i=0;i<n/2;i++) { temp=L[i]; L[i]=L[n-i...原创 2019-03-04 18:57:48 · 95 阅读 · 0 评论 -
第二章 线性表 第二节习题1
题目:算法思路(1)遍历比较找出最小的元素及其编号(2)再由最后的元素补上即可详细编码:bool Del(Sqlist A[],int n){ if(n==0) return false; int Min=A[0],Min_num=0; for(int i=1;i<n;i++) { if(Min&g...原创 2019-03-03 19:05:06 · 107 阅读 · 0 评论 -
关于静态链表的理解
从例题引入(在刷王道数据结构时)本题选C静态链表中的指针又称游标,指示下一个元素在数组中的下标;借助数组来描述线性表的链式存储结构,也有data和next,但是其指针是指向下一个元素的;例题2:选B...原创 2019-03-08 21:13:28 · 772 阅读 · 0 评论 -
第二章 线性表 第二节 习题9
题目:算法分析:有序数组查询使用二分查找记住分界条件,最后一个元素不需要交换;详细编码:void Search(Sqlist A,Elemtype x,int left,int right){ int len=A.length(); Elemtype temp; while(left<=right) { mid=(l...原创 2019-03-06 15:18:56 · 133 阅读 · 0 评论 -
第二章 线性表 第二节习题12
题目:(1)算法思想1.将第一个数c存到一个变量之中,并在A中遍历2.如果c=A[I]的话,计数加1,如果不等的话,计数减一,当计数为0时,c则替换为下一个整数3.将遍历之后留下来的整数,在序列中再次进行遍历,重新检查是否满足主元素的条件(2)具体算法描述int find(int A[i],int n){ int c=A[0],cnt=1; for...原创 2019-03-02 21:05:52 · 121 阅读 · 0 评论 -
第二章 线性表 第二节习题11
题目:(1)算法思想1.分别找出s1,s2的中位数a,b,再比较他们大小,如果相等返回a,如果不等执行一下步骤2.如果a>b,将s1的稍大的部分去掉,s2稍小的部分去掉3.如果a<b,反过来即可4.重复2,3步骤直到两个数列中只含有一个元素为止,且较小的那个为中位数注:在去掉时,要区分n为奇数和偶数,特别是为偶数时例子:如果a>b时,n为偶数,s...原创 2019-03-02 20:49:08 · 193 阅读 · 0 评论 -
第二章 线性表 第二节 习题8
算法分析:1)先将数组中的全部元素全部逆置2)再将数组中的一半再进行逆置详细编码void Reverse(int A[],int s,int e)//s为数组A的首部,e为尾部{ R(A,0,n); R(A,0,n/2); R(A,n/2+1,n);}void R(int A[],int s,int e){ int temp; ...原创 2019-03-05 19:25:51 · 122 阅读 · 0 评论 -
【狮子数学】chapter6-04-函数项级数与收敛域(第98讲)
原创 2019-06-16 22:21:22 · 213 阅读 · 0 评论