outdegree[i]=0;
for(p=G->adjlist[i]->firstedge;p;p->next) /*扫描的入边表*/
outdegree[p->adjvex]++; /*出度为1*/
Initstack(&S); /*置空栈*/
Initstack(&T);
for(i=0;in;i++)
if(outdegree[i]==0)
push(&S,i) /*出度为零的顶点i入栈 */
while(!stackEmpty(&S)) /*栈非空,即图中有出度为0的顶点*/ {i=pop(&S);
push(&T,i);
count++;
for(p=G->adjlist[i]->firstedge;P;p=p->next); /*扫描的i入边表*/
{j=p->adjvex; /*j是i的入边的起点*/
outdegree[j]--; /*j的出度减肥。相当于删去边*/
if(!outdegree[i]) /*j无后继*/
push(&S,j);
}/*end for*/
} /*end while*/
if(countn)
printf(“\n The Graph is not a DAG.\n”); /*图中有环,排序失败*/
else
{while(!stackEmpty(&S)) /*输出拓扑序列*/
{i=po(&T);print(“%d”,G->adjlist[i]->vertex);}
}
}
②用邻接矩阵作为存储结构。
Void NoSucePirstTopSort(Mgraph *G)
{seqstack s,T;
int i,j,count=0; /*用i,j代表Vi,Vj*/
Initstack(&S);
Initstack(&T);
for(i=0;in;i++)
for(j=0;jn;j++)
if(G->edges[i][j]= =0)
push(&S,i); /*出度为0,入栈*/
while(!sruckEmpty(&S))
{ i=po(&S);
push(&T,i);
count+ +;
for(j=0;jn;j++)
G->edges[i][j]=0; /*修改邻接矩阵*/
for(i=0;in;i++)
for(j=0;jn;j++)
if(G->edges[i][j]= =0)
push(&S,i);
} /*end while */
if(countn)
printf(“\n The Graph is not a DAG.\n”);
else
{while(!stackEmpty(&T)) /*输出拓扑序列*/
{i=pop(&T);
printf(“%d”,G->adjlist[i]->vertex);
}
}
}
7.26设有向图一个DAG,试以邻接矩阵和邻接表作为存储结构,写出对7.6节的DFSTopSort求精的算法。问什么有向图不是DAG时,该算法不能正常工作?
解:
①用邻接矩阵作为存储结构。
Void DPSTopSort(Mgraph*G,i,Setstack T)
{int j;
visited[i]=true;
for(j=0;jm;j++) /*栈所i有的邻接点j*/
if(G->edges[i][j]= =1)
if(!visited[j])
DPSTopSort(G,j,T);
Push(&T,i); /*从I出发的搜索已完成,保存i*/
}
②用邻接表作为存储结构。
Void DPSTopSort(ALGraph G,i,T)
{int j;
visited[i]=true;
for(p=G->adjlist[i]->firstedge;p;p=p->next)
if(!visited[p->adjvex])
DPSTopSort(G,p->adjvex,T);
Push(&T,i);
}
由于有向图不是DAG时,从某点出发的搜索将陷入循环状态,所以算法不能正常工作。
7.27 利用拓扑排序算法的思想写一算法判别有向图中是否存在有向环,当有向环存在时,输出构成环的顶点。
解:
设有向图用邻接表存储
Void SearckCycle(ALGraph G)
{int i;
EdgeNode *P;
for(i=0;in;i++) /*对每一个顶点i*/
for(p=G->adjlist[i]->firstedge;p;p=p->next) /*扫描i的出边表*/
if(p->next=G->adjlist[i]->firstedge) /*存在环*/
printf(“%d”,G->adjlist[i]->vertex);
}
《数据结构》习题汇编07 第七章 图 试题
第七章图试题 一、单项选择题 1.在无向图中定义顶点的度为与它相关联的()的数目。 A. 顶点 B. 边 C. 权 D. 权值 2.在无向图中定义顶点 v i与v j之间的路径为从v i到达v j的一个()。 A. 顶点序列 B. 边序列 C. 权值总和 D. 边的条数 3.图的简单路径是指()不重复的路径。 A. 权值 B. 顶点 C. 边 D. 边与顶点均 4.设无向图的顶点个数为n,则该图最多有()条边。 A. n-1 B. n(n-1)/2 C. n(n+1)/2 D. n(n-1) 5.n个顶点的连通图至少有()条边。 A. n-1 B. n C. n+1 D. 0 6.在一个无向图中,所有顶点的度数之和等于所有边数的 ( ) 倍。 A. 3 B. 2 C. 1 D. 1/2 7.若采用邻接矩阵法存储一个n个顶点的无向图,则该邻接矩阵是一个 ( )。 A. 上三角矩阵 B. 稀疏矩阵 C. 对角矩阵 D. 对称矩阵 8.图的深度优先搜索类似于树的()次序遍历。 A. 先根 B. 中根 C. 后根 D. 层次 9.图的广度优先搜索类似于树的()次序遍历。 A. 先根 B. 中根 C. 后根 D. 层次 10.在用Kruskal算法求解带权连通图的最小(代价)生成树时,通常采用一个()辅助结构, 判断一条边的两个端点是否在同一个连通分量上。 A. 位向量 B. 堆 C. 并查集 D. 生成树顶点集合 11.在用Kruskal算法求解带权连通图的最小(代价)生成树时,选择权值最小的边的原则是该边不能 在图中构成()。 A. 重边 B. 有向环 C. 回路 D. 权值重复的边 12.在用Dijkstra算法求解带权有向图的最短路径问题时,要求图中每条边所带的权值必须是 ()。 A. 非零 B. 非整 C. 非负 D. 非正 13.在一个连通图中进行深度优先搜索得到一棵深度优先生成树,树根结点是关节点的充要条件是它至少 有()子女。
数据库教案
数据库教案 Company number:【WTUT-WT88Y-W8BBGB-BWYTT-19998】
课程名称:《数据库原理》 选课课号:(2013-2014-2)-2022-1 课程性质:学科基础课(必修) 学时:48(理论教学)+ 8(上机) 教材:(1)数据库原理及应用.李明等编(西南交大出版社) (2)DataBase Design and Frost,John Day,CraigVan Slyke(清华大学出版社影印版) (3)数据库系统概论.王珊等编(中国人民大学出版社) 课程班级:工程力学11级,信息与计算科学11级1、2班 教室:西教1-310, 授课时间:1-12周,星期一1,2节,星期三 3,4节 授课教师:庞淑侠 考核方式:闭卷 总评成绩=平时成绩(20%) + 期末考试成绩(80%) 参考书 1. 赵艳铎等(译). 数据库原理(第5版). 清华大学出版社, 2011 2. 杨冬青等(译). 数据库系统概念(第6版). 机械工业出版社, 2012 3. 金名等(译). 数据库系统设计、实现与管理(第8版). 清华大学出版社, 2012 4. 刘智勇. SQL Server 2008宝典. 电子工业出版社,2010 5. 苏金国等(译). Oracle Database 9i10g11g人民邮电出版社, 2011 6. 李华. PowerBuilder程序设计教程. 清华大学出版社,2010
第 1 次课授课时间:2013年3月5日 第 2 次课授课时间:2013年3月7日
第 3 次课授课时间:2013年3月12日
工程结构抗震设计电子教案
《工程结构抗震设计》习题与思考题 第一章地震基础知识与工程结构抗震设防 1、地震按其成因分为几种类型?按其震源深浅又分为哪几种类型? 2、试述构造地震成因的局部机制和宏观背景? 3、试分析地震动的空间分布规律及其震害现象 4、地震波包含了哪几种波?它们的传播特点是什么?对地面运动影响如何? 5、什么是地震震级?什么是地震烈度?两者有何关联? 6、地震基本烈度的含义是什么? 7、为什么要进行设计地震分组? 8、试列出三座城市的抗震设防烈度、设计基本地震加速度和所属的设计地震分组 9、什么是建筑抗震三水准设防目标和两阶段设计方法? 10、我国规范根据重要性将抗震类别分为哪几类,不同类别的建筑对应的抗震设防标准是什么? 11、什么是建筑抗震概念设计?包括哪些方面的内容? 12、根据经验公式,某次地震释放的能量大约是5×1024尔格,它对应的里氏震级是多少? 第二章场地、地基和基础抗震 1、什么是场地,怎样划分场地土类型和场地类别? 2、简述选择建筑场地的相关规定 3、如何确定地基抗震承载力?简述天然地基抗震承载力的验算方法 4、已知某建筑场地的钻孔资料见下表,试计算该场地土层的自振周期,并按《抗震规范》 的规定来确定该建筑场地的类别 土层资料 5、什么是砂土液化?液化会造成哪些危害?影响液化的主要因素有哪些? 6、怎样判别地基土的液化,如何确定地基土液化的危害程度? 7、简述可液化地基的抗液化措施
第三章 工程结构地震反应分析与抗震验算 1、什么是地震作用?如何确定结构的地震作用? 2、地震系数和动力系数的物理意义是什么?通过什么途径确定这两个系数? 3、 影响地震反应谱形状的因素有哪些?设计用反应谱如何反映这些因素影响的? 4、简述确定结构地震作用的底部剪力法和振型分解反应谱法的基本原理和步骤? 5、何谓求水平地震作用效应的平方和开方法(SRSS ),写出其表达式,说明其基本假定和适用范围 6、简述计算地震作用的方法和适用范围 7、什么叫鞭端效应?设计时如何考虑这种效应? 8、什么叫结构的刚心和质心?结构的扭转地震效应是如何产生的? 9、哪些结构需要考虑竖向地震作用?如何计算竖向地震作用? 10、 什么是结构或构件恢复力特征曲线,反映了结构或构件的什么性能? 11、地震动的三要素是什么?采用时程分析法选取地震波时如何考虑这三要素? 12、 抗震设计中如何考虑结构的地震作用?依据的原则是什么? 13、什么是承载力抗震调整系数?为什么要引入这一系数? 14、什么是楼层屈服强度系数?怎样确定结构薄弱层或部位? 15、一单层单跨框架如图1所示。假设屋盖平面内 刚度为无穷大,集中于屋盖处的重力代表值G = 1200kN,框架柱线刚度i c =3.0×104 kN.m ,框架刚度 h =5.0m ,跨度l=9.0m 。已知设防烈度为8度,设计 基本地震加速度0.2g ,设计地震分组为第二组,Ⅱ 类场地,结构阻尼比为0.05。试求该结构在多遇地 震和罕遇地震时的水平地震作用。 16、求图2所示体系的频率、振型. 已知:m1=m2=m,k1=k2=k 17、试用振型分解反应谱法计算图3所示框架多遇地震时的层间剪力。 抗震设防烈度为8度,Ⅱ类场地,设计地震分组为第二组。 18、试用底部剪力法计算图3所示框架多遇地震时的层间剪力。已知结构的基本周期T1=0.467s ,每层的层高均为3.5m,抗震设防烈度为8度,Ⅱ类场地,设计地震分组为第二组。 MN/m 245=MN/m 195=MN/m 98=
数据结构 第七章 图
7.14 Status Build_AdjList(ALGraph &G)//输入有向图的顶点数,边数,顶点信息和边的信息建立邻接表 { InitALGraph(G); scanf("%d",&v); if(v<0) return ERROR; //顶点数不能为负 G.vexnum=v; scanf("%d",&a); if(a<0) return ERROR; //边数不能为负 G.arcnum=a; for(m=0;mnextarc;q=q->nextarc); q->nextarc=p; } p->adjvex=j;p->nextarc=NULL; }//while return OK; }//Build_AdjList 7.15 //本题中的图G均为有向无权图,其余情况容易由此写出 Status Insert_Vex(MGraph &G, char v)//在邻接矩阵表示的图G上插入顶点v { if(G.vexnum+1)>MAX_VERTEX_NUM return INFEASIBLE; G.vexs[++G.vexnum]=v; return OK; }//Insert_Vex Status Insert_Arc(MGraph &G,char v,char w)//在邻接矩阵表示的图G上插入边(v,w) { if((i=LocateVex(G,v))<0) return ERROR;
《结构的强度和稳定性》教学设计电子教案
《结构的强度和稳定性》教学设计
《技术与设计2》第一章第三节《结构的强度和稳定性》教学设计 《结构的强度和稳定性》教学设计 一、教材分析: 本节是“地质出版社”出版的教材《技术与设计2》中第一章第三节《结构的强度和稳定性》。共需2课时完成。本课为第1课时的学习。该章的总体设计思路是:认识结构——探析结构——设计结构——欣赏结构。“结构”与“设计”是该章的两个核心概念,结构的强度和稳定性则是结构设计中需要考虑的重要因素之一,是对结构及受力认识的基础上作进一步深入的学习。 二、教学目标: 知识与技能: 1、理解内力、强度、应力的概念,能进行简单的应力计算,掌握应力和强度的关系。 2、通过实验,明确强度与材料、强度与物体的形状及连接方式的关系。培养学生合作交流能力,对身边事物的观察能力。 3、理解稳定性的概念,及影响稳定性的因素。 过程与方法:通过观察生活和技术实验等方法使学生懂得应用相关的理论知识。 情感态度价值观:让学生亲身体验注重交流,通过分析讨论得到结论,培养学生的观察分析能力,合作交流能力。 三、教学重点与难点: 重点:影响结构强度和稳定性的主要因素。
难点:应力的计算,强度与应力的关系,结构设计需要在容许应力范围之内。 四、学情分析: 总体来说学生对通用技术这门课程比较感兴趣。他们的思维、生活经验已有一定基础,并在前面章节的学习中已经初步掌握了结构的一些相关知识,在此基础上帮助学生从其生活世界中选择通俗感兴趣的主题和内容,对结构问题进行进一步探讨,上升到理论的高度。 五、教学策略: 本课采用在教学中充分利用实验、讨论、小组合作的教学方法。多举生活中的案例,进行师生互动探讨,帮助学生加深对知识的理解。 六、教学安排 1课时 七、教学过程: (一)复习回顾,导入新课 教师引导学生回顾结构的概念,指出事物的性质:强度和稳定性 (二)知识构建 1、强度 对于结构变形,只给以“结实”“不结实”来评说是不够准确的,而对于结构的受力与变形应该有更科学的描述。通常,物体结构抵抗变形的能力,都以强度来表示,我们用应力来衡量强度。 (1)内力:外力使构件发生变形的同时,构件的内部分子之间随之产生一种抵抗变形的抵抗力,称为内力。
第三章栈和队列习题_数据结构电子教案
习题三栈和队列 一单项选择题 1. 在作进栈运算时,应先判别栈是否(① ),在作退栈运算时应先判别栈是否(② )。当栈中元素为n个,作进栈运算时发生上溢,则说明该栈的最大容量为(③ )。 ①, ②: A. 空 B. 满 C. 上溢 D. 下溢 ③: A. n-1 B. n C. n+1 D. n/2 2.若已知一个栈的进栈序列是1,2,3,…,n,其输出序列为p1,p2,p3,...,pn,若p1=3,则p2为( )。 A 可能是2 B 一定是2 C 可能是1 D 一定是1 3. 有六个元素6,5,4,3,2,1 的顺序进栈,问下列哪一个不是合法的出栈序列?() A. 5 4 3 6 1 2 B. 4 5 3 1 2 6 C. 3 4 6 5 2 1 D. 2 3 4 1 5 6 4.设有一顺序栈S,元素s1,s2,s3,s4,s5,s6依次进栈,如果6个元素出栈的顺序是s2,s3,s4, s6, s5,s1,则栈的容量至少应该是() A.2 B. 3 C. 5 D.6 5. 若栈采用顺序存储方式存储,现两栈共享空间V[1..m],top[i]代表第i个栈( i =1,2)栈顶,栈1的底在v[1],栈2的底在V[m],则栈满的条件是()。 A. |top[2]-top[1]|=0 B. top[1]+1=top[2] C. top[1]+top[2]=m D. top[1]=top[2] 6. 执行完下列语句段后,i值为:() int f(int x) { return ((x>0) ? x* f(x-1):2);} int i ; i =f(f(1)); A.2 B. 4 C. 8 D. 无限递归 7. 表达式3* 2^(4+2*2-6*3)-5求值过程中当扫描到6时,对象栈和算符栈为(),其中^为乘幂。 A. 3,2,4,1,1;(*^(+*- B. 3,2,8;(*^- C. 3,2,4,2,2;(*^(- D. 3,2,8;(*^(- 8. 用链接方式存储的队列,在进行删除运算时()。 A. 仅修改头指针 B. 仅修改尾指针 C. 头、尾指针都要修改 D. 头、尾指针可能都要修改 9. 递归过程或函数调用时,处理参数及返回地址,要用一种称为()的数据结构。 A.队列 B.多维数组 C.栈 D. 线性表 10.设C语言数组Data[m+1]作为循环队列SQ的存储空间, front为队头指针,rear为队尾指针,则执行出队操作的语句为() A.front=front+1 B. front=(front+1)% m C.rear=(rear+1)%(m+1) D. front=(front+1)%(m+1) 11.循环队列的队满条件为 ( ) A. (sq.rear+1) % maxsize ==(sq.front+1) % maxsize; B. (sq.front+1) % maxsize ==sq.rear C. (sq.rear+1) % maxsize ==sq.front D.sq.rear ==sq.front
(完整版)数据结构详细教案——图
数据结构教案第七章图
第7章图 【学习目标】 1.领会图的类型定义。 2.熟悉图的各种存储结构及其构造算法,了解各种存储结构的特点及其选用原则。 3.熟练掌握图的两种遍历算法。 4.理解各种图的应用问题的算法。 【重点和难点】 图的应用极为广泛,而且图的各种应用问题的算法都比较经典,因此本章重点在于理解各种图的算法及其应用场合。 【知识点】 图的类型定义、图的存储表示、图的深度优先搜索遍历和图的广度优先搜索遍历、无向网的最小生成树、最短路径、拓扑排序、关键路径 【学习指南】 离散数学中的图论是专门研究图性质的一个数学分支,但图论注重研究图的纯数学性质,而数据结构中对图的讨论则侧重于在计算机中如何表示图以及如何实现图的操作和应用等。图是较线性表和树更为复杂的数据结构,因此和线性表、树不同,虽然在遍历图的同时可以对顶点或弧进行各种操作,但更多图的应用问题如求最小生成树和最短路径等在图论的研究中都早已有了特定算法,在本章中主要是介绍它们在计算机中的具体实现。这些算法乍一看都比较难,应多对照具体图例的存储结构进行学习。而图遍历的两种搜索路径和树遍历的两种搜索路径极为相似,应将两者的算法对照学习以便提高学习的效益。 【课前思考】 1. 你有没有发现现在的十字路口的交通灯已从过去的一对改为三对,即每个方向的直行、左拐和右拐能否通行都有相应的交通灯指明。你能否对某个丁字路口的6条通路画出和第一章绪论中介绍的"五叉路口交通管理示意图"相类似的图? 2. 如果每次让三条路同时通行,那么从图看出哪些路可以同时通行? 同时可通行的路为:(AB,BC,CA),(AB,BC,BA),(AB,AC,CA),(CB,CA,BC)
数据结构试题:第七章的练习
数据结构复习题:图 单选题 1、在一个有向图中,所有顶点的入度之和等于所有顶点的出度之和的_____倍。A,1/2 B,1C,2 D,4 2、对于一个具有n个顶点和e条边的无向图,若采用邻接表表示,则表头向量的大小为_____。 A,n B, n+1 C,n-1 D,n+e 3、具有n个顶点的无向完全图,边的总数为_____条。 A,n-1 B,n C,n+1 D,n*(n-1)/2 4、在无向图G的邻接矩阵A中,若A[i,j]等于1,则A[j,i]等于_____ 。 A,i+j B,i-j C,1D,0 5、在n个结点的线索二叉树中,线索的数目为______. A,n-1 B,n C,n+1 D,2n 6、在二叉排序中,凡是新插入的结点,都是没有______的. A孩子B关键字C平衡因子D赋值 7、深度为5的二叉树至多有_______个结点. A,16 B,32 C,31 D,10 8、在一个具有n个顶点的有向图中,若所有顶点的出度数之和为s,则所有顶点的入度数之和为_________。 A,s B,s-1 C,s+1 D,n 9、在一个具有n个顶点的有向图中,若所有顶点的出度数之和为s,则所有顶点的度数之和为_________。 A,s B,s-1 C,s+1 D,2s 10、在一个具有n个顶点的无向图中,若具有e条边,则所有顶点的度数之和为_________。 A,n B,e C,n+e D,2e 11、在一个具有n个顶点的无向完全图中,所含的边数的_________。 A,n B,n(n-1) C,n(n-1)/2 D,n(n+1)/2 12、在一个具有n个顶点的有向完全图中,所含的边数为_________。 A,n B,n(n-1) C,n(n-1)/2 D,n(n+1)/2 13、在一个无权图中,若两顶点之间的路径长度为k,则该路径上的顶点数为
数据结构第七章图
数据结构习题(图) 一、选择题 1.设完全无向图的顶点个数为n,则该图有( B )条边。 A. n-l B. n(n-l)/2 C.n(n+l)/2 D. n(n-l) 2.在一个无向图中,所有顶点的度数之和等于所有边数的( )倍。 A.3 B.2 C.1 D.1/2 3.有向图的一个顶点的度为该顶点的( )。 A.入度 B. 出度 C.入度与出度之和 D.(入度+出度)/2 4.在无向图G (V,E)中,如果图中任意两个顶点vi、vj (vi、vj∈V,vi≠vj)都的,则称该图是( )。 A.强连通图 B.连通图 C.非连通图 D.非强连通图 5.若采用邻接矩阵存储具有n个顶点的一个无向图,则该邻接矩阵是一个( )。 A.上三角矩阵 B.稀疏矩阵 C.对角矩阵 D.对称矩阵 6.若采用邻接矩阵存储具有n个顶点的一个有向图,顶点vi的出度等于邻接矩阵 A.第i列元素之和 B.第i行元素之和减去第i列元素之和 C.第i行元素之和 D.第i行元素之和加上第i列元素之和 7.对于具有e条边的无向图,它的邻接表中有( )个边结点。 A.e-l B.e C.2(e-l) D. 2e 8.对于含有n个顶点和e条边的无向连通图,利用普里姆Prim算法产生最小生成时间复杂性为( ),利用克鲁斯卡尔Kruskal算法产生最小生成树(假设边已经按权的次序排序),其时间复杂性为( )。 A. O(n2) B. O(n*e) C. O(n*logn) D.O(e) 9.对于一个具有n个顶点和e条边的有向图,拓扑排序总的时间花费为O( ) A.n B.n+l C.n-l D.n+e 10.在一个带权连通图G中,权值最小的边一定包含在G的( )生成树中。 A.最小 B.任何 C.广度优先 D.深度优先 二、填空题 1.在一个具有n个顶点的无向完全图中,包含有____条边;在一个具有n个有向完全图中,包含有____条边。 2.对于无向图,顶点vi的度等于其邻接矩阵____ 的元素之和。 3.对于一个具有n个顶点和e条边的无向图,在其邻接表中,含有____个边对于一个具有n个顶点和e条边的有向图,在其邻接表中,含有_______个弧结点。 4.十字链表是有向图的另一种链式存储结构,实际上是将_______和_______结合起来的一种链表。 5.在构造最小生成树时,克鲁斯卡尔算法是一种按_______的次序选择合适的边来构造最小生成树的方法;普里姆算法是按逐个将_______的方式来构造最小生成树的另一种方法。 6.对用邻接表表示的图进行深度优先遍历时,其时间复杂度为一;对用邻接表表示的图进行广度优先遍历时,其时间复杂度为_______。 7.对于一个具有n个顶点和e条边的连通图,其生成树中的顶点数为_______ ,边数为_______。 8.在执行拓扑排序的过程中,当某个顶点的入度为零时,就将此顶点输出,同时将该顶点的所有后继顶点的入度减1。为了避免重复检测顶点的入度是否为零,需要设立一个____来存放入度为零的顶点。 三、简答题 l.回答以下问题:
数据结构第7章习题答案
第7章 《图》习题参考答案 一、单选题(每题1分,共16分) ( C )1. 在一个图中,所有顶点的度数之和等于图的边数的 倍。 A .1/2 B. 1 C. 2 D. 4 ( B )2. 在一个有向图中,所有顶点的入度之和等于所有顶点的出度之和的 倍。 A .1/2 B. 1 C. 2 D. 4 ( B )3. 有8个结点的无向图最多有 条边。 A .14 B. 28 C. 56 D. 112 ( C )4. 有8个结点的无向连通图最少有 条边。 A .5 B. 6 C. 7 D. 8 ( C )5. 有8个结点的有向完全图有 条边。 A .14 B. 28 C. 56 D. 112 ( B )6. 用邻接表表示图进行广度优先遍历时,通常是采用 来实现算法的。 A .栈 B. 队列 C. 树 D. 图 ( A )7. 用邻接表表示图进行深度优先遍历时,通常是采用 来实现算法的。 A .栈 B. 队列 C. 树 D. 图 ( C )8. 已知图的邻接矩阵,根据算法思想,则从顶点0出发按深度优先遍历的结点序列是 ( D )9. 已知图的邻接矩阵同上题8,根据算法,则从顶点0出发,按深度优先遍历的结点序列是 A . 0 2 4 3 1 5 6 B. 0 1 3 5 6 4 2 C. 0 4 2 3 1 6 5 D. 0 1 2 34 6 5 ( D )10. 已知图的邻接表如下所示,根据算法,则从顶点0出发按深度优先遍历的结点序列是 ( A )11. 已知图的邻接表如下所示,根据算法,则从顶点0出发按广度优先遍历的结点序列是 A .0 2 4 3 1 5 6 B. 0 1 3 6 5 4 2 C. 0 1 3 4 2 5 6 D. 0 3 6 1 5 4 2 ??? ? ?? ? ? ? ? ? ???????????0100011101100001011010110011001000110010011011110A .0 1 3 2 B. 0 2 3 1 C. 0 3 2 1 D. 0 1 2 3
数据结构第7章 图习题
第7章图 一、单项选择题 1.在一个无向图G中,所有顶点的度数之和等于所有边数之和的______倍。 A.l/2 B.1 C.2 D.4 2.在一个有向图中,所有顶点的入度之和等于所有顶点的出度之和的______倍。 A.l/2 B.1 C.2 D.4 3.一个具有n个顶点的无向图最多包含______条边。 A.n B.n+1 C.n-1 D.n(n-1)/2 4.一个具有n个顶点的无向完全图包含______条边。 A.n(n-l) B.n(n+l) C.n(n-l)/2 D.n(n-l)/2 5.一个具有n个顶点的有向完全图包含______条边。 A.n(n-1) B.n(n+l) C.n(n-l)/2 D.n(n+l)/2 6.对于具有n个顶点的图,若采用邻接矩阵表示,则该矩阵的大小为______。 A.n B.n×n C.n-1 D.(n-l) ×(n-l) 7.无向图的邻接矩阵是一个______。 A.对称矩阵B.零矩阵 C.上三角矩阵D.对角矩阵 8.对于一个具有n个顶点和e条边的无(有)向图,若采用邻接表表示,则表头向量的大小为______。 A.n B.e C.2n D.2e 9.对于一个具有n个顶点和e条边的无(有)向图,若采用邻接表表示,则所有顶点邻接表中的结点总数为______。
A.n B.e C.2n D.2e 10.在有向图的邻接表中,每个顶点邻接表链接着该顶点所有______邻接点。 A.入边B.出边 C.入边和出边D.不是入边也不是出边 11.在有向图的逆邻接表中,每个顶点邻接表链接着该顶点所有______邻接点。 A.入边B.出边 C.入边和出边D.不是人边也不是出边 12.如果从无向图的任一顶点出发进行一次深度优先搜索即可访问所有顶点,则该图一定是______。 A.完全图B.连通图 C.有回路D.一棵树 13.采用邻接表存储的图的深度优先遍历算法类似于二叉树的______算法。 A.先序遍历B.中序遍历 C.后序遍历 D.按层遍历 14.采用邻接表存储的图的广度优先遍历算法类似于二叉树的______算法。 A.先序遍历B.中序遍历 C.后序遍历 D.按层遍历 15.如果无向图G必须进行二次广度优先搜索才能访问其所有顶点,则下列说法中不正确的是______。 A.G肯定不是完全图B.G一定不是连通图 C.G中一定有回路D.G有二个连通分量 16.下列有关图遍历的说法不正确的是______。 A.连通图的深度优先搜索是一个递归过程 B.图的广度优先搜索中邻接点的寻找具有“先进先出”的特征 C.非连通图不能用深度优先搜索法 D.图的遍历要求每一顶点仅被访问一次 17.下列说法中不正确的是______。 A.无向图中的极大连通子图称为连通分量
数据结构第七章图练习及答案
1.拓扑排序的结果不是唯一的,试写出下图任意2个不同的拓扑序列。 2.写出求以下AOE网的关键路径的过程。要求:给出每一个事件和每一个活动的最早开 始时间和最晚开始时间。 【解析】解题关键是弄清拓扑排序的步骤 (1)在AOV网中,选一个没有前驱的结点且输出;(2)删除该顶点和以它为尾的弧;(3)重复上述步骤直至全部顶点均输出或不再有无前驱的顶点。 【答案】(1)0132465 (2)0123465 【解析】求关键路径首先求关键活动,关键活动ai的求解过程如下 (1)求事件的最早发生时间ve(j), 最晚发生时间vl(j); (2)最早发生时间从ve(0)开始按拓扑排序向前递推到ve(6), 最晚发生时间从vl(6)按逆拓扑排序向后递推到vl(0); (3)计算e(i),l(i):设ai由弧表示,持续时间记为dut,则有下式成立 e(i)=ve(j) l(i)=vl(k)-dut() (4)找出e(i)-l(i)=0的活动既是关键活动。 【答案】
关键路径为:a0->a4->a6->a9 7.1选择题 1.对于一个具有n个顶点和e条边的有向图,在用邻接表表示图时,拓扑排序算法时间复杂度为(B) A)O(n) B)O(n+e) C)O(n*n) D)O(n*n*n) 2.设无向图的顶点个数为n,则该图最多有(B)条边。 A)n-1 B)n(n-1)/2 C)n(n+1)/2 D)n2 3.连通分量指的是(B) A)无向图中的极小连通子图 B)无向图中的极大连通子图 C)有向图中的极小连通子图 D)有向图中的极大连通子图 4.n个结点的完全有向图含有边的数目(D) A)n*n B)n(n+1) C)n/2 D)n*(n-1) 5.关键路径是(A) A)AOE网中从源点到汇点的最长路径 B)AOE网中从源点到汇点的最短路径 C)AOV网中从源点到汇点的最长路径 D)AOV网中从源点到汇点的最短路径 6.有向图中一个顶点的度是该顶点的(C) A)入度B)出度C)入度与出度之和D)(入度+出度)/2 7.有e条边的无向图,若用邻接表存储,表中有(B)边结点。 A) e B)2e C)e-1 D)2(e-1) 8.实现图的广度优先搜索算法需使用的辅助数据结构为(B)
数据结构第七章图练习及答案
数据结构第七章图练习及答案 1( 拓扑排序的结果不是唯一的,试写出下图任意2个不同的拓扑序列。 2(写出求以下AOE网的关键路径的过程。要求:给出每一个事件和每一个活动的最早开始时间和最晚开始时间。 【解析】解题关键是弄清拓扑排序的步骤 (1)在AOV网中,选一个没有前驱的结点且输出;(2)删除该顶点和以它为尾的弧;(3)重复上述步骤直至全部顶点均输出或不再有无前驱的顶点。 【答案】(1)0132465 (2)0123465 【解析】求关键路径首先求关键活动,关键活动ai的求解过程如下 (1)求事件的最早发生时间ve(j), 最晚发生时间vl(j); (2)最早发生时间从ve(0)开始按拓扑排序向前递推到ve(6), 最晚发生时间从vl(6)按逆拓扑排序向后递推到 vl(0); (3)计算e(i),l(i):设ai由弧表示,持续时间记为dut,则有下式成立 e(i)=ve(j) l(i)=vl(k)-dut()
(4)找出e(i)-l(i)=0的活动既是关键活动。 【答案】 关键路径为:a0->a4->a6->a9 7.1 选择题 1(对于一个具有n个顶点和e条边的有向图,在用邻接表表示图时,拓扑排序算法时间复 杂度为( B ) A) O(n) B) O(n+e) C) O(n*n) D) O(n*n*n) 2(设无向图的顶点个数为n,则该图最多有( B )条边。 A)n-1 B)n(n-1)/2 C) n(n+1)/2 D)n2 3(连通分量指的是( B ) A) 无向图中的极小连通子图 B) 无向图中的极大连通子图 C) 有向图中的极小连通子图 D) 有向图中的极大连通子图 4(n个结点的完全有向图含有边的数目( D ) A)n*n B)n(n+1) C)n/2 D)n*(n-1) 5(关键路径是( A ) A) AOE网中从源点到汇点的最长路径
最新数据结构第7章-答案
一、单选题 C01、在一个图中,所有顶点的度数之和等于图的边数的倍。 A)1/2 B)1 C)2 D)4 B02、在一个有向图中,所有顶点的入度之和等于所有顶点的出度之和的倍。 A)1/2 B)1 C)2 D)4 B03、有8个结点的无向图最多有条边。 A)14 B)28 C)56 D)112 C04、有8个结点的无向连通图最少有条边。 A)5 B)6 C)7 D)8 C05、有8个结点的有向完全图有条边。 A)14 B)28 C)56 D)112 B06、用邻接表表示图进行广度优先遍历时,通常是采用来实现算法的。 A)栈 B)队列 C)树 D)图 A07、用邻接表表示图进行深度优先遍历时,通常是采用来实现算法的。 A)栈 B)队列 C)树 D)图 A08、一个含n个顶点和e条弧的有向图以邻接矩阵表示法为存储结构,则计算该有向图中某个顶点出度的时间复杂度为。 A)O(n) B)O(e) C)O(n+e) D)O(n2) C09、已知图的邻接矩阵,根据算法思想,则从顶点0出发按深度优先遍历的结点序列是。 A)0 2 4 3 1 5 6 B)0 1 3 6 5 4 2 C)0 1 3 4 2 5 6 D)0 3 6 1 5 4 2 B10、已知图的邻接矩阵同上题,根据算法,则从顶点0出发,按广度优先遍历的结点序列是。 A)0 2 4 3 6 5 1 B)0 1 2 3 4 6 5 C)0 4 2 3 1 5 6 D)0 1 3 4 2 5 6 D11、已知图的邻接表如下所示,根据算法,则从顶点0出发按深度优先遍历的结点序列是。 A)0 1 3 2 B)0 2 3 1 C)0 3 2 1 D)0 1 2 3 A12、已知图的邻接表如下所示,根据算法,则从顶点0出发按广度优先遍历的结点序列是。 A)0 3 2 1 B)0 1 2 3 C)0 1 3 2 D)0 3 1 2 A13、图的深度优先遍历类似于二叉树的。 A)先序遍历 B)中序遍历 C)后序遍历 D)层次遍历 D14、图的广度优先遍历类似于二叉树的。 A)先序遍历 B)中序遍历 C)后序遍历 D)层次遍历 B15、任何一个无向连通图的最小生成树。 A)只有一棵 B)一棵或多棵 C)一定有多棵 D)可能不存在 A16、对于一个具有n个结点和e条边的无向图,若采用邻接表表示,则顶点表的大小为,所有边链表中边结点的总数为。 A)n、2e B)n、e C)n、n+e D)2n、2e C17、判断有向图是否存在回路,可以利用___算法。 A)关键路径 B)最短路径的Dijkstra C)拓扑排序 D)广度优先遍历 A18、若用邻接矩阵表示一个有向图,则其中每一列包含的“1”的个数为。 A)图中每个顶点的入度 B)图中每个顶点的出度 C)图中弧的条数 D)图中连通分量的数目
数据结构第7章 图习题
习题7 图 单项选择题 1.在一个图中,所有顶点的度数之和等于所有边数的____倍。 A. 1/2 B. 1 C. 2 D. 4 2.任何一个无向连通图的最小生成树。 A.只有一棵 B.有一棵或多棵 C.一定有多棵 D.可能不存在 3.在一个有向图中,所有顶点的入度之和等于所有顶点的出度之和的____倍。 A. 1/2 B. 1 C. 2 D. 4 4.一个有n个顶点的无向图最多有____条边。 A. n B. n(n-1) C. n(n-1)/2 D. 2n 5.具有4个顶点的无向完全图有____条边。 A. 6 B. 12 C. 16 D. 20 6.具有6个顶点的无向图至少应有____条边才能确保是一个连通图。 A. 5 B. 6 C. 7 D. 8 7.在一个具有n个顶点的无向图中,要连通全部顶点至少需要____条边。 A. n B. n+1 C. n-1 D. n/2 8.对于一个具有n个顶点的无向图,若采用邻接矩阵表示,则该矩阵的大小是____。 A. n B. (n-1)2 C. n-1 D. n2 9.对于一个具有n个顶点和e条边的无向图,若采用邻接表表示,则表头向量的大小为_①___;所有邻接表中的接点总数是_②___。 ①A. n B. n+1 C. n-1 D. n+e ② A. e/2 B. e D. n+e 10.已知一个图如图所示,若从顶点a出发按深度搜索法进行遍历,则可能得到 的一种顶点序列为__①__;按宽度搜索法进行遍历,则可能得到的一种顶点序列 为__②__。 ① A. a,b,e,c,d,f B. e,c,f,e,b,d C. a,e,b,c,f,d D. a,e,d,f,c,b ② A. a,b,c,e,d,f B. a,b,c,e,f,d C. a,e,b,c,f,d D. a,c,f,d,e,b
MySQL数据库教案
任务引入 [5分钟] 课程介绍[20分钟] 新知识[45分钟] 任务实施[15分钟] 小结作业[5分钟] 认识数据库 提问:按自己的理解,说说数据库是什么? 展示各类网站 商城网站页面是大家在熟悉不过的了,商城网站上的商 品琳琅满目,让人流连忘返。但是在大家欣赏自己喜爱的商 品之余,是否想过商城网站上的文字信息、图片信息等存放 在哪里呢?当大家在商城网站上进行注册用户时,自己的信 息又存在哪里呢?当客户在商城网站上留言的时候,留言信 息又放在哪里了呢?这就是本门课程——《WEB数据库应 用》要解决的问题。 主要让学生明确以下几个问题: 1.明确课程定位与作用 专业基础课,与《程序设计基础》一起,为《网站建设》 奠定基础。同时兼顾计算机二级考试相关内容。通过任务引 领型和项目活动形式,掌握简单的数据库设计、数据管理和 维护方法,能进行web服务器的设置,具备使用web数据库 与高级程序设计语言或动态网页结合完成简单程序开发的 基本职业能力。 提问 展示 展示课程 标准、课程 体系图 与教材配 合 演示 指导
2.明确课程内容 内容的确定遵循两个原则:一是满足后续课程的基本需求,二是为学生进一步的学习提供必要的准备。通过对学生就业岗位和用人单位对本专业毕业生设置的招聘岗位等分析,课程内容应基本包括数据库系统概述、关系理论、关系数据库查询语言SQL、数据库设计与关系规范化理论、MySQL 数据中管理系统与高级程序设计语言或动态网页技术结合的简单应用。 3.强调学习方法 (1)与以往《计算机基础》、《办公软件应用》在学习方法上不同,知识与操作的连续性更强,在学习上要坚持一贯,持之以恒。 (2)课程难度加大,要求大家认真听、认真做,尤其要认真思考。逐渐养成举一反三的习惯、锻炼独立进行逻辑思维的能力。 (3)要学会自学。 (4)要善于和老师沟通。 (5)要学会团队协作。 4.明确考核方式
数据结构教案
课程简介 人们在运用程序设计语言编写程序的过程中发现所有的数据都可以抽象为三种结构,而对这些数据的所有操作都可以转化为对这三种数据的几种基本操作,而大多数的程序设计技巧都可以抽象为一些最基本的算法。于是人们逐步发展了一门称为数据结构(或数据结构与算法)的计算机科学,它广泛应用于计算机领域。 数据结构是信息与计算专业的核心基础课程之一。数据是计算机处理的对象,本课程研究的数据是非数值性、结构性的数据。学习本课程要求掌握各种主要数据结构的特点、计算机内的表示方法,以及处理数据的算法,对于算法所花费的时间和空间代价的分析也要求有一定程度的了解和掌握。通过本课程的学习,使学生透彻地理解各种数据对象的特点,学会数据的组织方法和实现方法,并进一步培养基本的良好的程序设计能力。本课程主要包括如下三个方面的内容: 1.基本数据结构:线性表、栈、队列、串、数组和广义表,掌握它们的特点、表示和实现,对静态结构要求非常熟练的编程上机实现,对动态结构要求逐步熟悉链表的表示,通过模仿实验教程中的例子,掌握编程技巧。强调类C语言的书写规范,特别注意参数的区别,输入输出的方式和错误处理方式,以及抽象数据类型的表示和实现。能熟练完成以下的应用:多项式的计算、语法检查、回朔算法、递归算法、表达式求值、离散事件模拟、文字的编辑和稀疏矩阵进行矩阵运算采用的处理方法。 2.复杂数据结构:树、二叉树、图。掌握它们的定义和特点、表示和实现,特别注意与基本数据结构的区别,掌握各种遍历的递归和非递归算法,能熟练完成以下的应用:最优树、Huffman编码、拓扑排序、关键路径和最短路径问题。 3.数据结构的应用:查找和内部排序。熟练掌握静态查找表的查找方法和实现,了解哈希表的构造和查找方法。掌握各种内部排序方法的基本思想、算法特点、排序过程以及它们的时间复杂度分析。
数据结构作业系统_第七章答案
7.22③试基于图的深度优先搜索策略写一算法,判别以邻接表方式存储的有向图中是否存在由顶点vi到顶点vj的路径(i≠j)。注意:算法中涉及的图的基本操作必须在此存储结构上实现。 实现下列函数: Status DfsReachable(ALGraph g, int i, int j); /* Judge if it exists a path from vertex 'i' to */ /* vertex 'j' in digraph 'g'. */ /* Array 'visited[]' has been initialed to 'false'.*/ 图的邻接表以及相关类型和辅助变量定义如下:Status visited[MAX_VERTEX_NUM]; typedef char VertexType; typedef struct ArcNode { int adjvex; struct ArcNode *nextarc; } ArcNode; typedef struct VNode { V ertexType data; ArcNode *firstarc; } VNode, AdjList[MAX_VERTEX_NUM]; typedef struct { AdjList vertices; int vexnum, arcnum; } ALGraph; Status DfsReachable(ALGraph g, int i, int j) /* Judge if it exists a path from vertex 'i' to */ /* vertex 'j' in digraph 'g'. */ /* Array 'visited[]' has been initialed to 'false'.*/ { int k; ArcNode *p; visited[i]=1; for(p=g.vertices[i].firstarc;p;p=p->nextarc) { if(p) { k=p->adjvex; if(k==j)return 1; if(visited[k]!=1)
《数据库原理及应用》教案
《数据库原理及应用》教案新乡学院计算机与信息工程学院
第1章数据库技术概论 ●教学目的:本章概述了数据库管理的进展、数据模型和数据库系统构成的 一般概念,说明什么是数据库设计以及为什么要发展数据库技术,使学生对数据库系统有一个初步的认识。 ●教学重点:1、数据管理的三个阶段及特点。 2、三种主要模型的概念。 3、 E-R图。 4、 DBS体系结构。 ●教学难点:E-R图 1.1 数据库系统概论 ●教学目的:从已有的知识对学生进行启发,认识到DB的重要性以及本课程 的任务和目的。 ●教学重点:1、数据管理种计算机化的三个阶段。 2、三个阶段的特点。 ●教学难点:数据库系统阶段的特点。 ●教学内容: 1.1.1 引言 1. 计算机的应用领域: 数值计算 数据处理 80%以上 实时控制 人工智能 辅助设计 2. 数据处理 指对各种形式的数据进行收集、存储、加工和传播等一系列活动的总和。 目的:是从大量、原始的数据中抽取、推导出对人们有价值的信息作为行为决策的依据。 方式:借助于计算机科学的保存和管理复杂的大量数据,以便能方便地利用信息资源。
3. 出现(存在)的问题: (1)大量的数据如何存放。(存储) (2)大量的数据如何组织。(结构) (3)大量的数据如何分类、查找、统计。(处理) (4)大量的数据如何有效使用。(共享、保护) (5)大量的数据如何维护。(维护) 正是这些问题的存在,迫使人们去形成一套数据处理的理论、方法、技术。-----数据库技术。 4. 基本概念 (1) 数据库技术-----是研究数据库结构、存储、设计、管理和使用的一门软件学科。 (2) 数据库(Data Base)-----是长期存储在计算机内有组织的、大量的、共享的数据集合,具有最小的冗余和较高的数据独立性,并为各种用户共享。 (3) 数据库管理系统(Data Base Management System)-----位于用户和OS之间的一层数据管理软件,包括DB的建立、查询、更新。 (4) 数据库系统(Data Base System)-----实现有组织地、动态地存储大量关联数据,方便用户访问的计算机软、硬件和数据资源组成的系统。 1.1.2 数据管理的进展 数据处理的中心问题是数据管理 数据的分类 数据的组织 数据的编码 数据管理包括数据的存储 数据的检索 数据的维护 依据其使用:技术的不同、设备的不同, 数据管理(处理)可分为: 人工式:人工处理数据阶段1800年以前,算盘,笔记 手工数据处理机械辅助式:机械辅助阶段1800—1890 手摇电动计算机 机械数据处理机电阶段 1890—1946年穿空机、验空机、分类机、卡片机、 制表机 电子数据处理电子阶段 1946年后 本书所讲的是电子数据处理发展经过的三个阶段: 人工管理 电子数据处理文件系统 DBS