数据结构-东南大学

数据结构-东南大学
数据结构-东南大学

★数据结构是一门研究非数值计算的程序设计问题中的(A )以及它们之间的(B )和运算的学科。 A .操作对象 B .计算方法 C .逻辑存储 D .数据映象 A .结构 B .关系 C .运算 D .算法

★ 试举例说明,如果两个数据结构的逻辑结构和存储结构相同,但基本运算(操作)不同,则这两个数据结构

就是不同的。

例如二叉树和二叉排序树在逻辑结构上都是二叉树,都采用二叉链表形式存储,但是对于某些运算的定义不同,例如插入操作,二叉树需指明作为哪个结点的左孩子还是右孩子插入,而二叉排序树无需指明,由二叉排序树的形状决定插入位置

★算法有哪些特点?为什么说一个具备了所有特点的算法,不一定就是实用的算法?

答:特点:输入、输出、确定性、有穷性、有效性;一般地说,只有多项式时间度杂度的算法才是实用的。

★如何评价算法的好坏? 答:正确性(四个层面);可读性;健壮性;时空效率(复杂性)。

★程序段

for (i=n-1; i>=1; i++) for (j=1; j<=i; j++) if (A[j]>A[j+1])

A[j]与A[j+1]对换;

其中n 为正整数,则最后一行的语句频度在最坏情况下是(D ) A. O(n) B. O(nlog2n) C. O(n3) D. O(n2)

★分析以递归方式求阶乘的算法的时间复杂度。

long Factorial ( long n ) {

if ( n = = 1 ) return 1; // 递归终止 else return n*Factorial ( n-1); // 递归

}

)

()1())2(()1(2))1(()1())((n O O n n T O O n T O O n T O =?==-+?=-+=

★分析二分查找函数的时间复杂度。

int BinarySearch(int *a, const int x, const int n) {

for(int left = 0, right = n –1; left <= right;){ int middle = (left + right)/2; switch(compare(x, a[middle])){ case ‘>’: left = middle + 1; break; // x > a[middle] ca se ‘<’: right = middle – 1; break; // x < a[middle] case ‘=’: found x; // x == a[middle] } }

return –1; // not found }

实例特性是数组a 中元素的个数n 。循环部分的每次迭代花费的时间为O(1)。假定循环一共执行k 次迭代,在第i 次迭代中需搜索的元素为 n/2i-1。所以,每次迭代搜索的元素个数的序列为:

这样,循环迭代的次数一共是:log2n+1.

★设任意n个整数存放于数组A[n]中,试编写程序,将所有负数排在所有正数前面(要求不附加额外的存储空间,且算法算法时间复杂度为O(n))。

int Rearrange(SeqList a[]; int n)

{

i=0; j=n-1; // i,j初始指向线性表a的第1个和第n个元素。

t=a[0]; //暂存枢轴元素。

while(i

{

while(i0) j--; //从右向左找负数。

if (i

while(i

if (i

}

a[i]=t; ∥将原第一元素放到最终位置。

}

★请设计算法,将一个向量(a1,a2,…,am)的内容原地逆置,成为(am,am-1,…,a1) 。

Reverse(int X[], int i, int j)

{ while ( i

{ A[i]和A[j]交换;

i++; j--;

}

}

★向量V=(a1, a2, …, an)存放在一个大小为n的一维数组A中,现要求V循环右移p位。请设计算法完成此功能。changeVector(int X[], int n, int p)

{

Reverse(X[], 0, n-p-1);

Reverse(X[], n-p, n-1);

Reverse(X[], 0, n-1);

}

★若让元素1,2,3依次进栈,则出栈次序不可能出现 C 的情况。

(A)3,2,1 (B)2,1,3 (C)3,1,2 (D)1,3,2

★铁路进行列车调度时, 常把站台设计成栈式结构的站台,如右图所示。试问:

(1)设有编号为1,2,3,4,5,6的六辆列车, 顺序开入栈式结构的站台, 则可能的出栈序列有多少种?

(2)若进站的六辆列车顺序如上所述, 那么是否能够得到435612, 325641, 154623和135426的出站序列, 如果不能, 说明为什么不能; 如果能, 说明如何得到(即写出"进栈"或"出栈"的序列)。

【解答】

(1)可能的不同出栈序列有:

()1327

65432112

1110987!

6!6!

1271)16/(1612

=???????????=??

=?+C (2) 不能得到435612和154623这样的出栈序列。因为若在4,3,5,6之后再将1,2出栈,则1,2必须一直在栈中,此时1先进栈,2后进栈,2应压在1上面,不可能1先于2出栈。154623也是这种情况。出栈序列325641和135426可以得到。

★利用双栈(设为S1和S2)模拟一个队列,写出入队和出队的算法。

答:入队算法

V oid enqueue(Stack S1, Q, Stack S2, int a ) {

if (!S1.StackFull( )) S1.push(a); else return("overflow"); }

出队算法

int dequeue(Stack S1, Stack S2) { if (!S2.StackEmpty( )) return (S2.pop( )); else

if (!S1.StackEmpty( ))

{ while (!S1.StackEmpty( )) S2.push(S1.pop( )); return (S2.pop( )); }

else return("Infeasible"); }

★已知一棵度为m 的树中,有N 1个度为1的结点,N 2个度为2的结点,…,N m 个度为m 的结点。问该树中有多少个叶子结点(度为0的结点)?

设该树中叶子结点为N 0个。该树总的结点个数应为:

∑=+=+++m

i i m N N N N N 1

010...

从求孩子结点总数的角度,也可以表示成:∑=?+

m

i i

N

i 1

1

所以:

★设树T的度为4,其中度为1,2,3和4的结点个数分别为4,2,1,1,则T中的叶子数为(D )。A.5 B.6 C.7 D.8

8

1

)1

4(

1

)1

3(

2

)1

2(

4

)1

1(

1

)1

(

1

1

=

?

-

+

?

-

+

?

-

+

?

-

+

=

?

-

+

=∑

=

m

i

i

N

i

N

★若一棵二叉树具有10个度为2的结点,5个度为1的结点,则度为0的结点个数是(B )

A.9 B.11 C.15 D.不确定

根据二叉树的性质3,有n0=n2+1

★假设一棵有n个叶子结点的二叉树中所有非叶子结点都有左右子树,问这棵二叉数中共有多少个结点?

根据二叉树的性质3,度为2的结点数和度为0的结点数满足:n2= n0-1

而题中所述二叉树没有度为1的结点,所以总的结点数N为:

1 2

1

2

1

2

-=

-

=

+

-

=

+

= n

n

n

n

n

n

N

(度为0的结点数共有n个)

★试给出如图所示二叉树的前序、中序和后序遍历序列。

前序遍历序列:A B D E G C F

中序遍历序列:D B E G A C F

后序遍历序列:D G E B F C A

★设结点X有左孩子结点Y,右孩子结点Z。用三种基本遍历方法得到的遍历序列中,X()是Y前驱,X()是Z的后继,Y()是Z的前驱。

1、一定

2、不

3、不一定

3、3、1

★任何一棵二叉树的叶结点在前序、中序和后序遍历序列中的相对次序(A )

(A) 不发生改变(B) 发生改变(C) 不能确定(D) 以上都不对

★已知某二叉树的后序遍历序列是dabec, 中序遍历序列是debac , 它的前序遍历是(D )

A.acbed B.decab C.deabc D.cedba

★给出某二叉树的前序遍历和后序遍历结果,能否唯一确定一棵二叉树。试举例说明。

不能。考虑下面的两棵树:它们的前序遍历结果都是AB,后序遍历结果都是BA。

们的前序遍历结果都是AB,后序遍历结果都是BA。

:不能。考虑下面的两棵树:

★什么是二叉搜索树?试按照关键字序列45,24,53,12,28,90 的顺序构造一棵初始为空的二叉搜索树。

如果关键字序列为12,28,90,45,24,53,则构造出的二叉搜索树又是怎样的?

二叉搜索树(二叉排序树),指的是一棵为空的二叉树,或者是一棵具有如下特性的非空二叉树:(1)若它的左子树非空,则左子树上所有结点的值均小于它的根结点的值;(2)若它的右子树非空,则右子树上所有结点的值均大于它的根结点的值;(3)它的左、右子树本身又各是一棵二叉排序树。

★如下二叉搜索树各结点的值依次为32-40,请标出结点的值。

解题思路:因为该树的中序遍历结果就是给定的序列,所以可按中序遍历确定结点序列,然后与给定的值序列相互对应填入。

★假设以二叉链表作为二叉树的存储结构,试编写一个计算二叉树中叶子结点数目的算法。

int leafs (BtNode *t )

{ if ( t == NULL ) return 0;

if (t→leftChild=NULL&&

t→rightChild==NULL) return 1;

else return leafs( t→leftChild ) +

leafs( t→rightChild )

}

★设二叉树中结点的数据域的值互不相同,试设计一个算法将值为x的结点及所有祖先结点的数据域中的内容打印出来。

递归算法

path(tnode *t, int x)

{ if (t==null) return 0;

else if (t->data==x)

{printf(“%d”,t->data), return 1;}

else if (path(t->lchild, x) ||

path(t->rchild, x))

{printf(“%d”,t->data), return 1;}

else return 0;

}

非递归算法

按非递归后序遍历方式进行遍历,设一外部栈S,遍历完成后,栈中的内容即为路径。栈元素的格式定义为:

struct stkNode {

BinTreeNode *ptr;

enum tag {L, R};

}

int path( BtreeNode *p, BtreeNode *x, stack *S) {

stkNode *w;

do {

while (p!=NULL)

{ w.ptr = p; w.tag = L; S.push(w); p=p->leftChild; } int continue = 1;

while (continue && !S.IsEmpty ( ))

{ S.Pop(w); p = w.ptr;

switch (w.tag) {

case L: w.tag = R; S.push(w); continue = 0;

p=p->rightChild; break;

case R: if (p == x) 输出S的内容;

}

}

} while ( !S.IsEmpty( ) );

return 0;

}

输出栈的内容即可得到路径:

while (!S.IsEmpty( ))

S.Pop(p); 输出p->ptr;

}

★试编写算法判定两棵树是否互为镜像。

int IsMirror(BtreeNode *r1, BbtreeNode *r2)

{

if (r1==NULL&&r2==NULL) return1;

if (r1->data == r2->data)

{ return (IsMirror( r1->lchild, r2->rchild)&&

IsMirror( r1->rchild, r2->lchild)));

else return 0;

}

★二叉搜索树的结点删除有几种情况,分别如何处理?

★请写出以下图的邻接矩阵。

★图中给出了7个顶点组成的无向图,从顶点1出发,对它进行深度优先遍历得到的的顶点序列是(1),而进行广度优先遍历得到的顶点序列是(2)。

(1)1534276 (2)1354276

★试给出是图的生成树和最小生成树的定义,且说明最小生成树是否是唯一的。

1、图的生成树是图的极小连通子图;

2、图的权值最小的生成树是图的最小生成树;

3、一般情况下图的最小生成树是不唯一的,当一个图的边上的权值均不相同时,图的最小生成树是唯一的。★分别用Prim算法和Kruskal算法求下图所示的无向图的最小生成树,并说明求解过程。

用Prim算法求最小生成树。

选择边的次序是:(0,5)、(5,4)、(4,3)、(3,2)、(2,1)、(1,6)

用Kruskal算法求最小生成树。

选择边的次序是: (0,5)、(3,2)、(1,6)、(2,1)、 (4,3)、(5,4)

★求如图所示的有向图中从v1到其他各顶点的最短路径。

∞/v1∞/v1∞/v13/v15/v12/v10

014/v5

6

14/v59/v2

514/v59/v27/v3

4∞/v19/v27/v34/v2

3∞/v19/v28/v43/v1

4/v22∞/v19/v2∞/v13/v14/v22/v1

1v7v6v5v4v3v2v1

∞∞∞∞∞3520

014/v5

6

149/v2

51497/v3

4974/v2

3∞983/v1

42∞9342/v1

1v7v6v5v4v3v2v1

v1到v2的最短路径为v1v2,长度为2; v1到v3的最短路径为v1v2v3,长度为4; v1到v4的最短路径为v1v4,长度为3;

v1到v5的最短路径为v1v2v3v5 ,长度为7; v1到v6的最短路径为v1v2v6 ,长度为9; v1到v7的最短路径为v1v2v3v5v7,长度为14;

★什么是排序算法的稳定性?如何判断一个排序算法是否是稳定的?

1、若在排序过程中关键字相同的对象在排序前后的先后次序不发生变化,则排序算法是稳定的,否则是不稳定的。

2、排序过程中是否发生了不相邻元素的交换。

★快速排序的过程是怎样的?试分析快速排序的效率。

1、快速排序的过程是:任取待排序对象序列中的某个对象 (例如取第一个对象) 作为基准,按照该对象的关键码大小,将整个对象序列划分为左右两个子序列,然后对子序列递归地继续快速排序,直到划分的序列中只有一个对象为止。

2、快速排序算法在初始序列基本有序时效率最低,可以表示为O(n2),在初始序列无序(每次划分得到两个长度基本相同的子序列)时效率最高,可以表示为O(nlog2n)。 ★试分析归并排序的效率。

1、在对两个长度均为n的有序子序列进行归并时,最少需要比较n次,最多需要比较2n-1次。

2、归并排序算法的效率为O(nlog2n),不受序列初始状态的影响。

★多关键字排序和基数排序之间是什么关系?多关键字排序有那些方法,需要注意那些问题?

1、基数排序是多关键字排序的一种特例:将关键字拆分为若干个位,每一位作为一个关键字,且取值范围相同。

2、常用的多关键字排序方法有:MSD和LSD。

3、与人的直觉相反,应首先从最不重要的因素排序,然后是次不重要的,…,最后对最重要的因素排序,且必须采用稳定的排序方法(如直接插入排序或起泡排序)。

★散列表存储的基本思想是什么?构造散列表需要解决那些问题?如何解决?

1、散列表存储的基本思想是通过数据元素关键字的Hash函数值决定数据元素的存储地址。

2、设计合适的散列函数和解决冲突。

3、常用的散列函数有:直接定址法、数字分析法、除留余数法、平方取中法、折叠法等;散列表存储中解决冲突的基本方法有:线性探查,二次探查,再散列法,链地址法等。

东南大学925结构力学考研真题及答案剖析 汇编

2014年真题 、管路敷设技术各类管路习题到位。在管路敷设过程中,要加强看护关于管路高中资料试卷连接管口处理高中资料试卷弯扁度固定盒位置保护层防腐跨接地线弯曲半径标高等,要求技术交底。管线敷设技术包含线槽、管架等多项方式,为解决高中语文电气课件中管壁薄、接口不严等问题,合理利用管线敷设技术。线缆敷设原则:在分线盒处,当不同电压回路交叉时,应采用金属隔板进行隔开处理;同一线槽内,强电回路须同时切断习题电源,线缆敷设完毕,要进行检查和检测处理。、电气课件中调试卷调控试验;对设备进行调整使其在正常工况下与过度工作下都可以正常工作;对于继电保护进行整核对定值,审核与校对图纸,编写复杂设备与装置高中资料试卷调试方案,编写重要设备高中资料试卷试验方案以及系统启动方案;对整套启动过程中高中资料试卷电气设备进行调试工作并且进行过关运行高中资料试卷技术指导。对于调试过程中高中资料试卷技术问题,作为调试人员,需要在事前掌握图纸资料、设备制造厂家出具高中资料试卷试验报告与相关技术资料,并且了解现场设备高中资料试卷布置情况与有关高中资料试卷电气系统接线等情况,然后根据规范与规程规定,制定设备调试高中资料试卷方案。 、电气设备调试高中资料试卷技术,需要在最大限度内来确保机组高中资料试卷安全,并且尽可能地缩小故障高中资料试卷破坏范围,或者对某些异常高中资料试卷工况进行自动处理,尤其要避免错误高中资料试卷保护装置动作,并且拒绝动作,来避免不必要高中资料试卷突然停机。因此,电力高中资料试卷保护装置调试技术,要求电力保护装置做到准确灵活。对于差动保护装置高中资料试卷调试技术是指发电机一变压器组在发生内部故障时,需要进行外部电源高中资料试卷切除从而采用高中资料试卷主要保护装置。

东南大学1996数据结构试题

东南大学1996数据结构试题 试题编号:451 试题名称:数据结构 一:回答下列问题(共46分) 1.线性表(a(1),a(2),……a(n))用顺序映射表示时,a(i)与a(i+1)(1<=i

东南大学十套数据结构试题及答案

数据结构试卷(一) 三、计算题(每题 6 分,共24分) 1.在如下数组A中链接存储了一个线性表,表头指针为A [0].next,试 写出该线性表。 A 0 1 2 3 4 5 6 7 dat a nex t 2. 3.已知一个图的顶点集V和边集E分别为:V={1,2,3,4,5,6,7}; E={(1,2)3,(1,3)5,(1,4)8,(2,5)10,(2,3)6,(3,4)15, (3,5)12,(3,6)9,(4,6)4,(4,7)20,(5,6)18,(6,7)25}; 用克鲁斯卡尔算法得到最小生成树,试写出在最小生成树中依次得到 的各条边。 4.画出向小根堆中加入数据4, 2, 5, 8, 3时,每加入一个数据后堆的 变化。 四、阅读算法(每题7分,共14分) 1.LinkList mynote(LinkList L) {//L是不带头结点的单链表的头指针 if(L&&L->next){ q=L;L=L->next;p=L; S1: while(p->next) p=p->next; S2: p->next=q;q->next=NULL; } return L; } 请回答下列问题: (1)说明语句S1的功能; (2)说明语句组S2的功能; (3)设链表表示的线性表为(a 1,a 2 , …,a n ),写出算法执行后的 返回值所表示的线性表。 2.void ABC(BTNode * BT) {

if BT { ABC (BT->left); ABC (BT->right); cout<data<<' '; } } 该算法的功能是: 五、算法填空(共8分) 二叉搜索树的查找——递归算法: bool Find(BTreeNode* BST,ElemType& item) { if (BST==NULL) return false; //查找失败 else { if (item==BST->data){ item=BST->data;//查找成功 return ___________;} else if(itemdata) return Find(______________,item); else return Find(_______________,item); }//if } 六、编写算法(共8分) 统计出单链表HL中结点的值等于给定值X的结点数。 int CountX(LNode* HL,ElemType x)

东南大学数据结构试卷

共 8 页 第1页 东 南 大 学 考 试 卷(A 卷) 课程名称 数据结构 考试学期 08-09-3 得分 适用专业 吴健雄学院电类 考试形式 半开卷 考试时间长度 120分钟 一、选择题(每题1分,共5分) 1.下面有关链栈的描述,对常规情况正确的是 ( ) A .在链头插入,链尾删除。 B .在链尾插入,链头删除。 C .在链尾插入,链尾删除。 D .在链头插入,链头删除。 2.对线性表进行对半搜索时,要求线性表必须( ) A .以数组方式存储 B .以数组方式存储并按关键码排序 C .以链表方式存储 D .以链表方式存储并按关键码排序 3.对包含n 个元素的散列表进行搜索,平均搜索长度为( ) A .O(log 2n) B .O(n) C .不直接依赖于n D .三者均不是 4.在同一个有向图中,所有结点的入度和与出度和之比为( ) A .1 B .2 C .1/2 D .都不对 5.在具有n 个顶点的无向图中,要连通全部顶点至少需要( )条边。 A .n B .n+1 C .n-1 D .n/2 二、判断题(每题1分,共5分) 1.链式存储的线性表所有存储单元的地址可连续可不连续。 ( ) 2.存储有向图的邻接矩阵是对称的,所以可以仅存矩阵上三角部分。 ( ) 3.在采用闭散列法解决冲突时,不要立刻做物理删除,否则搜索时会出错。 ( ) 4.二叉树中序遍历结果序列的最后一个结点必是前序遍历的最后一个结点。 ( ) 5.堆排序的时间复杂度是O(n log 2 n),但需要额外存储空间。 ( ) 三、填空题(每空1分,第1空、第2空为2分,共11分) 1.中缀表达式“(a+b)*d+e/(f+a*d)+c)”所对应的后缀表达式为 (1) 2.后缀表达式“ab&&ef>!||”所对应的中缀表达式为(2) 自 觉 遵 守 考 场 纪 律 如 考 试 作 弊 此 答 卷 无 效

东南大学期末结构力学复习题及答案

结构力学复习题 一、填空题。 1、在梁、刚架、拱、桁架四种常见结构中,主要受弯的是 和 ,主要承受轴力的是 和 。 2、选取结构计算简图时,一般要进行杆件简化、 简化、 简化和 简化。 3、分析平面杆件体系的几何组成常用的规律是两刚片法则、 和二元体法则。 4、建筑物中用以支承荷载的骨架部分称为 ,分为 、 和 三大类。 5、一个简单铰相当于 个约束。 6、静定多跨梁包括 部分和 部分,内力计算从 部分开始。 7、刚结点的特点是,各杆件在连接处既无相对 也无相对 ,可以传递 和 。 8、平面内一根链杆自由运动时的自由度等于 。 二、判断改错题。 1、三刚片用三个铰两两相联必成为几何不变体系。( ) 2、对静定结构,支座移动或温度改变会产生内力。( ) 3、力法的基本体系必须是静定的。( ) 4、任何三铰拱的合理拱轴都是二次抛物线。( ) 5、图乘法可以用来计算曲杆。( ) 6、静定结构的影响线全部都由直线段组成。( ) 7、多跨静定梁若附属部分受力,则只有附属部分产生内力。( ) 8、功的互等定理成立的条件是小变形和线弹性。( ) 9、力法方程中,主系数恒为正,副系数可为正、负或零。( ) 三、选择题。 1、图示结构中当改变B 点链杆方向(不能通过A 铰)时,对该梁的影响是( ) A 、全部内力没有变化 B 、弯矩有变化 C 、剪力有变化 D 、轴力有变化 2、图示桁架中的零杆为( ) A 、DC, EC, DE, DF , EF B 、DE, DF , EF C 、AF , BF , DE, DF , EF D 、DC, EC, AF , BF 3、右图所示刚架中A 支座的反力H A 、P B 、2P - C 、P -

东南大学软件基础考试大纲

2016年硕士研究生入学统一考试软件基础考试大纲 考试科目:程序设计基础、数据结构 考试形式和试卷结构 一、试卷满分及考试时间 试卷满分为150分,考试时间为180分钟 二、答题方式 答题方式为闭卷、笔试 三、试卷内容结构 程序设计基础50% 数据结构50% 程序设计基础 一、C++语言基础 考试内容 基本数据类型、enum数据类型、运算符、控制语句 考试要求 1.理解计算机信息的存储于表示,掌握C++的基本数据类型的用法. 2.掌握运算符与表达式的基本用法. 3.理解逗号表达式与条件表达式的作用. 4.掌握enum枚举类型的定义、枚举变量声明及使用.

5.掌握和运用三种(if、if…else、switch)选择语句. 6.掌握和运用三种(while、for、do…while)循环语句. 7.掌握和运用其他(break、continue)控制语句. 二、C++程序的结构(一):函数 考试内容 函数定义、函数声明、函数调用、函数的参数传递、递归调用、函数重载、函数模板 考试要求 1.掌握函数定义的语法形式,熟练运用自定义函数来实现多函数程序设计. 2.理解函数声明的作用,掌握函数声明的用法. 3.理解函数调用的过程. 4.明确参数传递的意义,理解和掌握函数调用中参数传递的三种参数传递调用:传值调用、引用调用、传地址调用. 5.掌握和运用递归函数的概念、算法和实现方法. 6.理解函数重载的概念,掌握函数重载的实现方法. 7.理解函数模板的概念,掌握函数模板的实现方法. 三、C++程序的结构(二):类 考试内容 抽象数据类型、类的定义、对象创建、构造函数与析构函数、公共接口函数、工具函数 类的组合、类模板

数据结构II A卷 东北大学(答案)

东北大学继续教育学院 数据结构II 试卷(作业考核线上1) A 卷 院校学号:******姓名***** (共 6 页) [ A]1.抽象数据类型的三个组成部分分别为 A.数据对象、数据关系和基本操作 B.数据元素、逻辑结构和存储结构 C.数据项、数据元素和数据类型 D.数据元素、数据结构和数据类型 [B ]2.要求相同逻辑结构的数据元素具有相同的特性,其含义为 A. 数据元素具有同一的特点 B. 不仅数据元素包含的数据项的个数相同,而且其对应数据项的类型要一致 C. 每个数据元素都一样 D. 仅需要数据元素包含的数据项的个数相同 [D ]3.下列各式中,按增长率由小至大的顺序正确排列的是 A.,n!,2n ,n3/2 B.n3/2,2n,n logn,2100 C.2n,log n,n logn,n3/2 D.2100,logn, 2n, n n [B ]4. 在下列哪种情况下,线性表应当采用链表表示为宜 A.经常需要随机地存取元素 B.经常需要进行插入和删除操作 C.表中元素需要占据一片连续的存储空间 D.表中元素的个数不变 [ C]5.设指针p指向双链表的某一结点,则双链表结构的对称性是 A. p->prior->next=p->next->next; B. p->prior->prior=p->next->prior; C. p->prior->next=p-> next->prior; D. p->next->next= p->prior->prior;

[ D]6. 已知指针p和q分别指向某带头结点的单链表中第一个结点和最后一个结点。假设指针s指向另一个单链表中某个结点,则在s所指结点之后插入上述链表应执行的语句为 A. s->next=q;p->next=s->next; B. s->next=p;q->next=s->next; C. p->next=s->next;s->next=q; D. q->next=s->next;s->next=p; [A ]7. 栈和队列的共同特点是 A.只允许在端点处插入和删除元素 B.都是先进后出 C.都是先进先出 D.没有共同点 [ D]8. 对于链队列,在进行插入运算时. A. 仅修改头指针 B. 头、尾指针都要修改 C. 仅修改尾指针 D.头、尾指针可能都要修改 [B ]9.设有一个顺序栈的入栈序列是1、2、3,则3个元素都出栈的不同排列个数为 A.4 B.5 C. 6 D. 7 [D ]10.设一个栈的输入序列为A,B,C,D,则借助一个栈所得到的输出序列不可能是 A.A,B,C,D B.D,C,B,A C. A,C,D,B D. D,A,B,C [C ]11.表达式a*(b+c)-d的后缀表达式是 A.abcd*+- B.abc*+d- C.abc+*d- D.-+*abcd [B ]12.某二叉树的先序序列和后序序列正好相反,则该二叉树的特点一定是 A. 空或只有一个结点 B.高度等于其结点数 C. 任一结点无左孩子 D.任一结点无右孩子 [B ]13.下面的说法中正确的是 (1)任何一棵二叉树的叶子结点在种遍历中的相对次序不变。 (2)按二叉树定义,具有三个结点的二叉树共有6种。 A.(1),(2) B.(1) C.(2) D.(1),(2)都错 [B ]14.树有先序遍历和后序遍历,树可以转化为对应的二叉树。下面的 说法正确的是 A.树的后序遍历与其对应的二叉树的先序遍历相同 B.树的后序遍历与其对应的二叉树的中序遍历相同 C.树的先序序遍历与其对应的二叉树的中序遍历相同 D.以上都不对 [ D]15.下列说法正确的是 (1)二又树按某种方式线索化后,任一结点均有前趋和后继的线索 (2)二叉树的先序遍历序列中,任意一个结点均处于其子孙结点前 (3)二叉排序树中任一结点的值大于其左孩子的值,小于右孩子的值 A.(1)(2)(3) B.(1)(2) C.(1)(3) D.都不对 [ D]16. 二叉树的第k层的结点数最多为 A.2k-1 B.2K+1

1998-2016年东南大学925结构力学考研真题及答案解析 汇编

2017版东南大学《925结构力学》全套考研资料 我们是布丁考研网东大考研团队,是在读学长。我们亲身经历过东大考研,录取后把自己当年考研时用过的资料重新整理,从本校的研招办拿到了最新的真题,同时新添加很多高参考价值的内部复习资料,保证资料的真实性,希望能帮助大家成功考入东大。此外,我们还提供学长一对一个性化辅导服务,适合二战、在职、基础或本科不好的同学,可在短时间内快速把握重点和考点。有任何考东大相关的疑问,也可以咨询我们,学长会提供免费的解答。更多信息,请关注布丁考研网。 以下为本科目的资料清单(有实物图及预览,货真价实): 2017年东南大学《结构力学》全套资料包含: 一、东南大学《结构力学》历年考研真题及答案 2015年东南大学《结构力学》考研真题 2014年东南大学《结构力学》考研真题 2013年东南大学《结构力学》考研真题(含答案解析) 2012年东南大学《结构力学》考研真题(含答案解析) 2011年东南大学《结构力学》考研真题(含答案解析) 2010年东南大学《结构力学》考研真题(含答案解析) 2009年东南大学《结构力学》考研真题(含答案解析) 2008年东南大学《结构力学》考研真题(含答案解析) 2007年东南大学《结构力学》考研真题(含答案解析) 2006年东南大学《结构力学》考研真题(含答案解析) 2005年东南大学《结构力学》考研真题(含答案解析) 2004年东南大学《结构力学》考研真题(含答案解析) 2003年东南大学《结构力学》考研真题(含答案解析) 2002年东南大学《结构力学》考研真题(含答案解析) 2001年东南大学《结构力学》考研真题(含答案解析) 2000年东南大学《结构力学》考研真题(含答案解析) 1999年东南大学《结构力学》考研真题(含答案解析) 1998年东南大学《结构力学》考研真题(含答案解析) 二、东南大学《结构力学》期中期末试题及答案 三、东南大学《结构力学》考研复习笔记 1、东南大学《结构力学》复习笔记 2、东南大学《结构力学》辅导讲义 3、东南大学《结构力学》考研大纲 四、东南大学《结构力学》考研复习题 1、东南大学《结构力学》典型例题 2、东南大学《结构力学》内部习题库 3、东南大学《结构力学》(单建版)课后习题答案 以下为截图预览: 2015年真题

东南大学十套数据结构试题及答案(同名8889)

数据结构试卷(一) 三、计算题(每题6 分,共24分) 1.在如下数组A中链接存储了一个线性表,表头指针为A [0].next,试写出该线性表。 data 60 50 78 90 34 40 next 3 5 7 2 0 4 1 2. 3.已知一个图的顶点集V和边集E分别为:V={1,2,3,4,5,6,7}; E={(1,2)3,(1,3)5,(1,4)8,(2,5)10,(2,3)6,(3,4)15, (3,5)12,(3,6)9,(4,6)4,(4,7)20,(5,6)18,(6,7)25}; 用克鲁斯卡尔算法得到最小生成树,试写出在最小生成树中依次得到的各条边。 4.画出向小根堆中加入数据4, 2, 5, 8, 3时,每加入一个数据后堆的变化。 四、阅读算法(每题7分,共14分) 1.LinkList mynote(LinkList L) {//L是不带头结点的单链表的头指针 if(L&&L->next){ q=L;L=L->next;p=L; S1:while(p->next) p=p->next; S2:p->next=q;q->next=NULL; } return L; } 请回答下列问题: (1)说明语句S1的功能; (2)说明语句组S2的功能; (3)设链表表示的线性表为(a1,a2, …,a n),写出算法执行后的返回值所表示的线性表。 2.void ABC(BTNode * BT) { if BT { ABC (BT->left); ABC (BT->right); cout<data<<' '; } } 该算法的功能是: 五、算法填空(共8分) 二叉搜索树的查找——递归算法: bool Find(BTreeNode* BST,ElemType& item)

东南大学十套数据结构试题与答案

数据结构试卷(一) 三、计算题(每题 6 分,共24 分) 1. 在如下数组 A 中存储了一个线性表,表头指针为 A [0].next ,试写出该线性表。 3. 已知一个图的顶点集V 和边集E分别为:V={1,2,3,4,5,6,7}; E={(1,2)3,(1,3)5,(1,4)8,(2,5)10,(2,3)6,(3,4)15, (3,5)12,(3,6)9,(4,6)4,(4,7)20,(5,6)18,(6,7)25}; 用克鲁斯卡尔算法得到最小生成树,试写出在最小生成树中依次得到的各条边。 4. 画出向小根堆中加入数据4, 2, 5, 8, 3 时,每加入一个数据后堆的变化。 四、阅读算法(每题7 分,共14 分) 1. LinkList mynote(LinkList L) {//L 是不带头结点的单链表的头指针if(L&&L->next){ q=L ;L=L ->next ;p=L; S1 :while(p ->next) p=p ->next ; S2 :p ->next=q ;q->next=NULL; } return L ; } 请回答 下列问 题: (1)说明语句S1 的功能; (2)说明语句组S2 的功能; (3)设链表表示的线性表为( a1,a 2, ?,a n), 写出算法执行后的返回值所表示的线性表。 2. void ABC(BTNode * BT) { if BT { ABC (BT->left); ABC (BT->right); cout<data<<' '; } } 该算法的功能是: 五、算法填空(共8 分) 二叉搜索树的查找——递归算法: bool Find(BTreeNode* BST,ElemType& item) { if (BST==NULL) return false; // 查找失败 else { if (item==BST->data){ item=BST->data;// 查找成功return ;} else if(itemdata) return Find( _____________ ,item); else return Find( ______________ ,item); }//if } 60 50 78 90 34 40 3 5 7 2 0 4 1 3 4 5 6 7 data next 2. 请画出下图的邻接矩阵和邻接表。

东南大学十套数据结构试题及答案

东南大学十套数据结构 试题及答案 Document number:BGCG-0857-BTDO-0089-2022

数据结构试卷(一) 三、计算题(每题 6 分,共24分) 1.在如下数组A中链接存储了一个线性表,表头指针为A [0].next,试 写出该线性表。 A 0 1 2 3 4 5 6 7 dat a nex t 2. 3.已知一个图的顶点集V和边集E分别为:V={1,2,3,4,5,6,7}; E={(1,2)3,(1,3)5,(1,4)8,(2,5)10,(2,3)6,(3,4)15, (3,5)12,(3,6)9,(4,6)4,(4,7)20,(5,6)18,(6,7)25}; 用克鲁斯卡尔算法得到最小生成树,试写出在最小生成树中依次得到的各条边。 4.画出向小根堆中加入数据4, 2, 5, 8, 3时,每加入一个数据后堆的 变化。 四、阅读算法(每题7分,共14分) 1.LinkList mynote(LinkList L) {//L是不带头结点的单链表的头指针 if(L&&L->next){ q=L;L=L->next;p=L; S1: while(p->next) p=p->next; S2: p->next=q;q->next=NULL; } return L; } 请回答下列问题: (1)说明语句S1的功能; (2)说明语句组S2的功能; (3)设链表表示的线性表为(a 1,a 2 , …,a n ),写出算法执行后的 返回值所表示的线性表。 2.void ABC(BTNode * BT) { if BT { ABC (BT->left); ABC (BT->right); cout<data<<' ';

东南大学数据结构2000真题

东南大学2000年考研专业课试卷数据结构试题 一:简要回答下列问题(共40分) 1.假设一棵二叉树的层序序列是ABCDEFGHIJ和中序序列是DBGEHJACIF,请画出该树.(6分) 2.简单比较文件的多重表和倒排表组织方式各自的特点.(6分) 3.画出对算术表达式A-B*C/D+E^F求值时操作数栈和运算符栈的变化过程.(6分) 4.找出所有满足下列条件的二叉树6分) a)它们在先序遍历和中序遍历时,得到的结点访问序列相同; b)它们在后序遍历和中序遍历时,得到的结点访问序列相同; c)它们在先序遍历和后序遍历时,得到的结点访问序列相同. 5.对一个由n个关键字不同的记录构成的序列,能否用比2n-3少的次数选出该序列中 关键字取最大值和关键字取最小值的记录?请说明如何实现?在最坏情况下至少进行 多少次比较?(8分) 6.已知某文件经过置换选择排序后,得到长度分别为47,9,31,18,4,12,23,7的8个初 始归并段.试为3路平衡归并设计读写外存次数最少的归并方案,并求出读写外存的 次数.(8分) 二: 已知L是无表头结点的单链表,其中P结点既不是首元结点,也不是尾元结点,(10分 ) a)在P结点后插入S结点的语句序列是______ b)在P结点前插入S结点的语句序列是______ c)在表首插入S结点的语句序列是______ d)在表尾插入S结点的语句序列是______ (1) P^.next:=S; (2) P^.next:=P^.next^.next; (3) P^.next:=S^.next; (4) S^.next:=P^.next; (5) S^.next:=L; (6) S^.next:=NIL; (7) Q:=P; (8) WHILE P^.next<>Q DO P:=P^.next; (9) WHILE P^.next<>NIL DO P:=P^.next; (10) P:=Q; (11) P:=L; (12) L:=S; (13) L:=P; 三: 设计一个符号表的表示方法,编写算法使得在该表中进行查询,插入和删除任何一个 标识符X的操作在O(1)的时间内.假设1<=x<=m,n为要插入的个数,所需空间为m+n. (10分) 四: 试利用Dijkstra算法求下图中从顶点a到其它各顶点的最短路径,写出执行算法过程

数据结构-东南大学

★数据结构是一门研究非数值计算的程序设计问题中的(A )以及它们之间的(B )和运算的学科。 A .操作对象 B .计算方法 C .逻辑存储 D .数据映象 A .结构 B .关系 C .运算 D .算法 ★ 试举例说明,如果两个数据结构的逻辑结构和存储结构相同,但基本运算(操作)不同,则这两个数据结构 就是不同的。 例如二叉树和二叉排序树在逻辑结构上都是二叉树,都采用二叉链表形式存储,但是对于某些运算的定义不同,例如插入操作,二叉树需指明作为哪个结点的左孩子还是右孩子插入,而二叉排序树无需指明,由二叉排序树的形状决定插入位置 ★算法有哪些特点?为什么说一个具备了所有特点的算法,不一定就是实用的算法? 答:特点:输入、输出、确定性、有穷性、有效性;一般地说,只有多项式时间度杂度的算法才是实用的。 ★如何评价算法的好坏? 答:正确性(四个层面);可读性;健壮性;时空效率(复杂性)。 ★程序段 for (i=n-1; i>=1; i++) for (j=1; j<=i; j++) if (A[j]>A[j+1]) A[j]与A[j+1]对换; 其中n 为正整数,则最后一行的语句频度在最坏情况下是(D ) A. O(n) B. O(nlog2n) C. O(n3) D. O(n2) ★分析以递归方式求阶乘的算法的时间复杂度。 long Factorial ( long n ) { if ( n = = 1 ) return 1; // 递归终止 else return n*Factorial ( n-1); // 递归 } ) ()1())2(()1(2))1(()1())((n O O n n T O O n T O O n T O =?==-+?=-+= ★分析二分查找函数的时间复杂度。 int BinarySearch(int *a, const int x, const int n) { for(int left = 0, right = n –1; left <= right;){ int middle = (left + right)/2; switch(compare(x, a[middle])){ case ‘>’: left = middle + 1; break; // x > a[middle] ca se ‘<’: right = middle – 1; break; // x < a[middle] case ‘=’: found x; // x == a[middle] } } return –1; // not found } 实例特性是数组a 中元素的个数n 。循环部分的每次迭代花费的时间为O(1)。假定循环一共执行k 次迭代,在第i 次迭代中需搜索的元素为 n/2i-1。所以,每次迭代搜索的元素个数的序列为:

东南大学十套数据结构试题及答案

数据结构试卷(一) 三、计算题(每题 6分,共24 分) 3. 已知一个图的顶点集 V 和边集E 分别为:V={1,2,3,4,5,6,7}; E={(1,2)3,(1,3)5,(1,4)8,(2,5)10,(2,3)6,(3,4)15, (3,5)12,(3,6)9,(4,6)4,(4,7)20,(5,6)18,(6,7)25}; 用克鲁斯卡尔算法得到最小生成树,试写出在最小生成树中依次得到的各条边。 4. 画出向小根堆中加入数据 4, 2, 5, 8, 3时,每加入一个数据后堆的变化。 四、 阅读算法(每题 7分,共14分) 1. LinkList mynote(LinkList L) {//L 是不带头结点的单链表的头指针 if(L&&L-> next){ q=L ; L=L — >next ; p=L ; S1: while(p — >n ext) p=p — >next ; S2: p — >next=q ; q — >next=NULL ; } return L ; } 请回答下列问题: (1 )说明语句S1的功能; (2) 说明语句组S2的功能; (3) 设链表表示的线性表为(a 1,a 2,…,a n ),写出算法执行后的返回值所表示的线性 表。 2. void ABC(BTNode * BT) { if BT { ABC (BT->left); ABC (BT->right); cout<data<<''; } } 该算法的功能是: 五、 算法填空(共 8分) 二叉搜索树的查找 一谗归算法: bool Fi nd(BTreeNode* BST,ElemType & item) { if (BST==NULL) return false; // 查找失败 else { if (item==BST->data){ item=BST->data;// 查找成功 return _______________________ ;} else if(itemdata) return Find( ,item); else return Find( _____________ ,item); 1. 在如下数组A 中链接存储了一个线性表, A [0].next ,试写出该线性表。 60 50 78 90 34 40 3 5 7 2 4 1 2. 3 4 5 6 7 表头指针为 data n

东南大学十套数据结构试题与答案.docx

数据结构试卷(一) 三、算(每6分,共24 分) 1. 在如下数 A 中存了一个性表,表指 A [0].next,写出性表。 A01234567 data605078903440 next3572041 2.画出下的接矩和接表。 3.已知一个的点集 V 和集 E 分: V={1,2,3,4,5,6,7}; E={(1,2)3,(1,3)5,(1,4)8,(2,5)10,(2,3)6,(3,4)15, (3,5)12,(3,6)9,(4,6)4,(4,7)20,(5,6)18,(6,7)25}; 用克斯卡算法得到最小生成,写出在最小生成中依次得到的各条。 4. 画出向小根堆中加入数据4, 2, 5, 8, 3,每加入一个数据后堆的化。 四、算法(每7 分,共 14 分) 1. LinkList mynote(LinkList L) {//L是不点的表的指 if(L&&L->next){ q=L; L=L- >next ; p=L; S1:while(p->next) p=p->next; S2:p->next=q;q->next=NULL; } return L; } 回答下列: (1)明句 S1 的功能; (2)明句 S2 的功能; (3)表表示的性表( a1,a 2, ? ,a n), 写出算法行后的返回所表示的 性表。 2. void ABC(BTNode * BT) { if BT { ABC (BT->left); ABC (BT->right); cout<data<<' '; } } 算法的功能是: 五、算法填空(共8 分) 二叉搜索的找——算法:

东南大学2001年研究生入学考试数据结构试题

东南大学2001年研究生入学考试数据结构试题 一、 1、设胜者树(selection tree)由k个记录缓冲区和k-1个非叶结点构成。概念上非叶结点表示其两个子女中关键字较小者,而实际上非叶结点存放的是什么? 2、给出KMP算法中失败函数f的定义,并说明利用f进行串模式匹配的规则,该算法的技术特点是什么? 3、是一道关于Huffman树中叶子结点和非叶结点数量关系的计算题,具体题目记不得了。 4、求有向图中任意一对顶点之间最短路径的弗洛伊德算法(allcosts-Floyd)中,要求有向图满足什么前提条件? 二、在二叉树的结点结构中增加一个域:leftsize,t^.leftsize表示t结点的左子树中结点的总个数,试编写算法alloc(k),在二叉树中查找中序序号为k的结点,要求时间复杂度为O(log2(n))。 三、编写算法输出从n个自然数中取k个(k<=n)的所有组合。例如,当n=5,k=3时,你的算法应该输出:543,542,541,532,531,521,432,431,421,321. 四、设有向图G用邻接表的方式存储,u,v是G中的任意两个结点,写一算法,求出G中从u到v的所有简单路径。 五、下面是一改进了的快速分类算法,试补充其中的空白语句,并分析该算法所需的最大递归空间是多少? procedure qsort1(var list:afile;m,n:integer); (设list[m].key

东南大学十套数据结构试题及标准答案

东南大学十套数据结构试题及答案

————————————————————————————————作者:————————————————————————————————日期:

数据结构试卷(一) 三、计算题(每题6 分,共24分) 1.在如下数组A中链接存储了一个线性表,表头指针为A [0].next,试写出该线性表。 A 0 1 2 3 4 5 6 7 data 60 50 78 90 34 40 next 3 5 7 2 0 4 1 2.请画出下图的邻接矩阵和邻接表。 3.已知一个图的顶点集V和边集E分别为:V={1,2,3,4,5,6,7}; E={(1,2)3,(1,3)5,(1,4)8,(2,5)10,(2,3)6,(3,4)15, (3,5)12,(3,6)9,(4,6)4,(4,7)20,(5,6)18,(6,7)25}; 用克鲁斯卡尔算法得到最小生成树,试写出在最小生成树中依次得到的各条边。 4.画出向小根堆中加入数据4, 2, 5, 8, 3时,每加入一个数据后堆的变化。 四、阅读算法(每题7分,共14分) 1.LinkList mynote(LinkList L) {//L是不带头结点的单链表的头指针 if(L&&L->next){ q=L;L=L->next;p=L; S1:while(p->next) p=p->next; S2:p->next=q;q->next=NULL; } return L; } 请回答下列问题: (1)说明语句S1的功能; (2)说明语句组S2的功能; (3)设链表表示的线性表为(a1,a2, …,a n),写出算法执行后的返回值所表示的线性表。 2.void ABC(BTNode * BT) { if BT { ABC (BT->left); ABC (BT->right); cout<data<<' '; } } 该算法的功能是: 五、算法填空(共8分) 二叉搜索树的查找——递归算法: bool Find(BTreeNode* BST,ElemType& item)

东南大学考研结构力学考试大纲

《结构力学》考试大纲 一、命题范围与重点 1.平面体系的几何组成分析 用平面几何不变体系的基本组成规则分析给定平面体系的几何构造,判断其几何稳定性。 2.静定结构的内力计算 静定梁、刚架、桁架、拱和组合结构的内力计算。 直杆弯矩图的叠加法;直杆弯矩,剪力及荷载间的微分关系及增量关系。 隔离体平衡法:结点法和截面法以及它们的联合应用。 多跨静定梁的计算方法。 刚体体系的虚功原理。 3.静定结构的位移计算 弹性体的虚功原理及平面结构位移计算的一般公式。 静定平面弹性结构因荷载、支座移动、温度变化和制造误差而产生的位移计算(单位荷载法)。 图乘法;三角形及标准二次抛物线图形的面积及形心位置。 弹性体系的功的互等定理、反力互等定理和位移互等定理。 4.力法 用力法计算超静定梁、刚架、桁架、组合结构。 上述超静定结构因荷载、支座移动、温度变化和制造误差而产生的内力和位移的计算。 对称性的利用。 5.位移法 等截面直杆的转角位移方程。

用位移法计算刚架和连续梁由于荷载和支座移动产生的内力。 对称性的利用。 6.力矩分配法 用力矩分配法计算连续梁和无侧移刚架 7.影响线 用静力法和机动法作静定梁和桁架反力和内力的影响线。 用机动法作超静定梁的影响线。 用影响线求给定荷载下的影响量。 8.矩阵位移法 单元刚度矩阵的概念。 利用一般单元的刚度矩阵求特殊单元的刚度矩阵。 局部坐标系和整体坐标系中结点力、位移和单元刚度矩阵的转换。整体刚度矩阵的概念,和集成方法。 等效结点荷载。结构整体结点荷载的形成。 9.结构动力计算 单自由度体系的自由振动。自振频率的计算。 单自由度体系在简谐荷载作用下的受迫振动。 多自由度体系的自由振动。振型和频率的计算、主振型的正交性。多自由度体系在简谐荷载作用下的受迫振动,振型分解法。 10.结构的极限荷载 截面极限弯矩的计算。 静定梁及刚架极限荷载的计算。 比例加载的定理。 连续梁的极限荷载。

东南大学结构力学考试大纲

《结构力学》考试大纲 1.平面体系的几何组成分析 用平面几何不变体系的基本组成规则分析给定平面体系的几何构造,判断其几何稳定性。 2.静定结构的内力计算 静定梁、刚架、桁架、拱和组合结构的内力计算。 直杆弯矩图的叠加法;直杆弯矩,剪力及荷载间的微分关系及增量关系。 隔离体平衡法:结点法和截面法以及它们的联合应用。 多跨静定梁的计算方法。 刚体体系的虚功原理。 3.静定结构的位移计算 弹性体的虚功原理及平面结构位移计算的一般公式。 静定平面弹性结构因荷载、支座移动、温度变化和制造误差而产生的位移计算(单位荷载法)。 图乘法;三角形及标准二次抛物线图形的面积及形心位置。 弹性体系的功的互等定理、反力互等定理和位移互等定理。 4.力法 用力法计算超静定梁、刚架、桁架、组合结构。 上述超静定结构因荷载、支座移动、温度变化和制造误差而产生的内力和位移的计算。 对称性的利用。 5.位移法 等截面直杆的转角位移方程。 用位移法计算刚架和连续梁由于荷载和支座移动产生的内力。对称性的利用。 6.力矩分配法 用力矩分配法计算连续梁和无侧移刚架 7.影响线 用静力法和机动法作静定梁和桁架反力和内力的影响线。 用机动法作超静定梁的影响线。 用影响线求给定荷载下的影响量。8.矩阵位移法 单元刚度矩阵的概念。 利用一般单元的刚度矩阵求特殊单元的刚度矩阵。 局部坐标系和整体坐标系中结点力、位移和单元刚度矩阵的转换。 整体刚度矩阵的概念,和集成方法。等效结点荷载。结构整体结点荷载的形成。 9.结构动力计算 单自由度体系的自由振动。 自振频率的计算。 单自由度体系在简谐荷载作用下的受迫振动。 多自由度体系的自由振动。振型和频率的计算、主振型的正交性。 多自由度体系在简谐荷载作用下的受迫振动,振型分解法。 10.结构的极限荷载 截面极限弯矩的计算。 静定梁及刚架极限荷载的计算。 比例加载的定理。 连续梁的极限荷载。 11.结构稳定性计算 临界荷载的确定。 弹性支承等截面杆的稳定性 。

东南大学专业课

东南大学]2000数据结构试题 --------------------------------------------------------------------- ----------- 科目名称:数据结构 一:简要回答下列问题(共40分) 1.假设一棵二叉树的层序序列是ABCDEFGHIJ和中序序列是DBGEHJACIF,请画出 该树.(6分) 2.简单比较文件的多重表和倒排表组织方式各自的特点.(6分) 3.画出对算术表达式A-B*C/D+E^F求值时操作数栈和运算符栈的变化过程.(6 分) 4.找出所有满足下列条件的二叉树6分) a)它们在先序遍历和中序遍历时,得到的结点访问序列相同; b)它们在后序遍历和中序遍历时,得到的结点访问序列相同; c)它们在先序遍历和后序遍历时,得到的结点访问序列相同. 5.对一个由n个关键字不同的记录构成的序列,能否用比2n-3少的次数选出该序列中关键字取最大值和关键字取最小值的记录?请说明如何实现?在最坏情况下 至少进行多少次比较?(8分) 6.已知某文件经过置换选择排序后,得到长度分别为47,9,31,18,4,12,23,7的8个初始归并段.试为3路平衡归并设计读写外存次数最少的归并方案,并求出读 写外存的次数.(8分) 二:已知L是无表头结点的单链表,其中P结点既不是首元结点,也不是尾元结 点,(10分) a)在P结点后插入S结点的语句序列是______ b)在P结点前插入S结点的语句序列是______ c)在表首插入S结点的语句序列是______ d)在表尾插入S结点的语句序列是______

(1) P^.next:=S; (2) P^.next:=P^.next^.next; (3) P^.next:=S^.next; (4) S^.next:=P^.next; (5) S^.next:=L; (6) S^.next:=NIL; (7) Q:=P; (8) WHILE P^.next<>Q DO P:=P^.next; (9) WHILE P^.next<>NIL DO P:=P^.next; (10) P:=Q; (11) P:=L; (12) L:=S; (13) L:=P; 三:设计一个符号表的表示方法,编写算法使得在该表中进行查询,插入和删除任何一个标识符X的操作在O(1)的时间内.假设1<=x<=m,n为要插入的个数,所需 空间为m+n.(10分) 四:试利用Dijkstra算法求下图中从顶点a到其它各顶点的最短路径,写出执行 算法过程中各步的状态.(10分) ____________ / 4 ↓ 6 b------→e___9 15↑ ↑\ / / 2 /8 ↓/ a------→c g (和严蔚敏习题集上题目相同) \ \4 ↑↑ 12↓ 5 ↓ 10/ / d←------f__/ / \___________/ 3 五:以顺序存储结构表示串,设计算法,求串S中出现的第一个最长重复子串及其 位置并分析算法的时间复杂度.(15分)

相关文档
最新文档