电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

完整版数据结构本科生导师制问题VIP免费

完整版数据结构本科生导师制问题_第1页
完整版数据结构本科生导师制问题_第2页
完整版数据结构本科生导师制问题_第3页
计算机科学与技术学院实验课程归档材料规范实验报告一实验课名称:数据结构与程序设计实验实验名称: 本科生导师制问题实验类型: 设计型实验班级:学号:姓名:时间:一、问题描述在高校的教学改革中, 有很多学校实行了本科生导师制。一个班级的学生被分给几个老师, 每个老师带 n 个学生, 如果该老师还带研究生, 那么研究生也可直接带本科生。本科生导师制问题中的数据元素具有如下形式:导师带研究生(老师,((研究生 1,(本科生 1,⋯,本科生 m1)),(研究生 2,(本科生 1,⋯,本科生 m2))⋯))导师不带研究生(老师,(本科生 1,⋯,本科生 m))导师的自然情况只包括姓名、职称;研究生的自然情况只包括姓名、班级;本科生的自然情况只包括姓名、班级。二、 数据结构设计本实验使用的数据结构是广义表,广义表采用头尾链表存储结构来实现。定义教师、学生结点结构体如下:typedef struct GLNode { char name[100]; /* 教师或学生的姓名 */ char prof[100]; /* 教师结点表示职称,学生结点表示班级*/ int type; /* 结点类型: 0-教师, 1-研究生, 2-本科生 */ struct {struct GLNode *hp, *tp;} ptr; /*hp 指向同级的下一结点, tp 指向下级的首结点 */ }GList; 人员信息的表示形式为:高老师-教授-0、李刚 -二班-1、李明 -二班-2. 人员信息中的姓名、职称、班级、人员类型用“-”隔开,如高老师 -教授 -0,“高老师”表示姓名, “教师”表示职称, “ 0”表示人员的类型是教师;李刚-二班 -1,“李刚”表示姓名,“二班”表示班级,“1”表示人员的类型是研究生;李明 -二班 -2,“李明”表示姓名, “二班”表示班级, “ 2”表示人员的类型是本科生。广义表((高老师 -教授-0,(李明 -一班 -2,王平 -二班 -2)),(李老师 -副教授 -0,(白梅 -二班-1,(李刚 -一班 -2)))可以用图 3 表示。高老师教授0李明一班2^王平二班2^^李老师副教授0^白梅二班1^李刚一班2^^图 3 导师制用广义表实现示例三、算法设计建立:建立导师广义表。GList InitGList(){ GList L = NULL, *l; GList e; e = InitGLNode("teacherli", "fujiaoshou", 0); InsertFirst_GL(&L, e); e = InitGLNode("teachergao", "jiaoshou", 0); InsertFirst_GL(&L, e); l = &((L->ptr).tp); e = InitGLNode("wangping", "erban", 2); Inser...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

爱的疯狂+ 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部