计算机2000级数据结构与算法答疑集锦 2001-10-17 徐镜春 18:37:1 教师说 同学们好! 18:38:19 0010105084 王盛对老师说: 老师好 18:39:9 0010125046 季江海对老师说: 老师好! 18:39:59 0010125046 季江海对老师说: . 18:40:7 0010125087 江波对老师说: 线性表的具体应用? // 书上有,只要数据是线性关系的都可以 18:40:9 0010130014 仝传博对老师说: How are you. 18:41:3 0010125008 戎楷对老师说: 徐教授,请问对C语言学的不好的同学想学好这门课程有什么赐教? // 第一最好要补上C语言,这样算法才能严格描述,存储结构就是具体的了.其次,C语言不好不会影响数据逻辑结构的理解和算法思想的思路 18:41:20 0010116033 俞连斌对老师说: 我们上课都听不大懂, // 找本专科用的<<数据结构>>看看,要容易理解一点 18:41:51 0010116033 俞连斌对老师说: 原来的C语言基础就不大好, 18:42:4 教师说 大家好 18:43:22 0010130014 仝传博对老师说: 数据结构和离散数学有何联系 // 离散数学中的集合,树,图等概念在数据结构中要用到 18:43:39 0010125008 戎楷对老师说: 请问这门课程去年的及格率是多少? // 大概在2/3 18:44:42 0010125075 刘晖对老师说: 老师啊,我们的数据结构实在成问题啊,到的我们一会考试怎么办啊!! // 如果教材难懂, 找本专科用的<<数据结构>>看看,要容易理解一点 18:44:50 0010105154 汤亚萍对老师说: 你好,老师!我想问书本上定义的抽象数据类型到底有什么用?好象在写算法时没用处吗?// 抽象数据类型可以脱离数据的物理结构,只根据逻辑结构,并定义一些常用操作,常用操作的算法实现依赖物理结构 18:45:8 0010105084 王盛对老师说: 我们现在可不可以用bland c // 也可以 18:45:15 0010105184常昕对老师说: 徐老师,教材中提及的数据结构演示软件DSDEMO哪里有的下载???? // 我也不知道,大概不会有 18:45:20 0010105084 王盛对老师说: 如果可以用那么是否可以提供一下有关资料 或者推荐一下有什么好的参考书 // 只要是<<数据结构>>或者<<数据结构与算法>>都可以,找本专科用的<<数据结构>>看看,要容易理解一点 18:45:24 0010125071 冯韬对老师说: 老师,C语言果然很难 // 开始难,入门了就容易了 18:45:31 教师回答俞连斌: C语言很重要要重新补起. 18:45:36 0010125008 戎楷对老师说: 数据结构的在实际中有什么用途? // 在你编程解决实际问题时,数据结构可以告诉你如何合理存储数据和进行合理操作,以实现算法 18:46:33 0010105084 王盛对老师说: 书p47 status push()中*S.top++=e 我认为应该是*++S.top=e 老师你认为对吗为什么? // 书上是正确的,因为top始终指向下一个可存储的空间,所以先存储后移指针 18:46:46 0010125071 冯韬对老师说: 怎么样能提高逻辑表达能力 // 多动脑筋,多读写算法 18:47:11 0010125047 刘才林对老师说: vc++和c是不是相似的语言? // c++ 是C的扩充,我们暂时用不到 18:47:22 教师回答仝传博: 离散数学的概念在以后的树和图中应用很多 18:47:45 0010136026胡琼对老师说: 老师好,数据结构与计算机专业到底有什么联系? // 数据结构在稍有难度的程序设计中非常有用,可以说必不可少 18:48:18 0010125071 冯韬对老师说: 我发现逻辑性不强编程会很难的 // 对 18:48:19 教师说 服务器很忙,所以慢 18:48:52 0010125047 刘才林对老师说: 要学好c语言是要多看还是要多练?! // 都重要,但后者更重要 18:49:35 0010105084 王盛对老师说: 书上的DSDEMO软件,是不是对于我们了解算法结构很有用? // 是的 18:52:13 0010113022 余天福对老师说: 徐老师:教材P54页 例3-1 的表与课件的不一样,是否按教材的 // 按教材的,可能课件制作有误 18:55:20 0010136026胡琼对老师说: 我的c语言没学好,怎么办? // 先编些小程序,慢慢熟悉起来,要多练.. 18:55:54 0010125021 程娟对老师说: 徐老师好,我想问问C语言和数据结构的区别 // c语言着重语言的能力,是数据结构中算法描述的工具,数据结构着重分析数据之间的关系和实现操作的算法. 18:57:9 0010113010 孙彦对老师说: 徐老师,第二章的习题2.10中要一次删除在线性表中从第i个元素 18:59:7 0010113010 孙彦对老师说: 开始的k个元素时,for循环这样写对不对:for(j=i-1;j<=i+k-2;j++ ) // 不对!因为移动数据的次数不一定是k次,所以k次循环不对. 18:57:15 教师说 由于同学们提出的问题太多,网速又很慢,我先把同学们提的问题收集归类,然后再在网站发布.上 18:57:28 0010125008 戎楷对老师说: 请问数据结构考试的重点在哪几章? // 每章都重要 18:57:32 0010136058刘博颍对老师说: 在TURBOC环境下怎么才能运行数据结构的练习题 // 几句话讲不清楚,请问本地辅导老师 18:57:36 0010126005 冯海明对老师说: 您好,数据结构我们都感觉学起来很困难,能不能给我们推荐一些复习资料,单纯听课件不是很容易. // 找本专科用的<<数据结构>>看看,要容易理解一点 18:58:14 0010136042赵兴琴对老师说: C语言对于数据结构很重要,可是我的指针没学好,可有补救的方法? // 看前面类似的问题 18:58:15 教师回答余天福: p.53表3。1按教材的 18:58:47 0010136023张擎对老师说: C语言没学好怎么去学这门课呢? // 第一最好要补上C语言,这样算法才能严格描述,存储结构就是具体的了.其次,C语言不好不会影响数据逻辑结构的理解和算法思想的思路 18:58:47 0010136023张擎对老师说: 老师,我们的数据结构学不好,请问有什么学习的方法, // 找本简单的<<数据结构>>书,多看,脑子要跟算法转! 18:59:11 0010136039张煜对老师说: 课程太抽象,老师能不能讲具体一点,讲慢一点? // 你可以尝试用具体的例子代入抽象的概念中 18:59:39 0010122111 陈静对老师说: 老师 ,能不能把 作业题的答案 在网上公布一下,最好有详细的解示的过程 // 请认真听实时课,到时候会讲解 18:59:45 0010125050 申建祥对老师说: 请问老师有没有一种大纲(关于这门的). // <<题集>>中的每一章的基本内容和学习要点就是大纲 18:59:47 0010136001魏敬政对老师说: 数据结构和C语言,离散数学的关系有多大 // 看前面类似问题 19:0:10 0010136051陈丹对老师说: 我现在正在补c语言,但是我觉得太抽象了,不知该怎样学得好呢? // 看前面类似问题 19:0:26 0010136042赵兴琴对老师说: 有没有一种办法可以让我们对这门课感兴趣。我觉得有时上可会有点枯燥 // 站得高一点的角度看课程的内容,也许就很有趣了 19:0:41 0010126005 冯海明对老师说: 因为上个学期C语言学习的不是很透彻,在这样的情况下如何学好数据结构呢? // 看前面类似问题 19:0:51 0010105115 周芸对老师说: 老师你好,我们的数据结构题集答案好象不是很完整,有时做起来好象很不放心,有没有具体一点的 // 请认真听实时课,到时候会讲解 19:0:51 0010105085 王英俊对老师说: 老师能不能提供什么出版社的数据结构的书比较详细 // 我们的教材是很详细了,只是抽象了一点, 找本专科用的<<数据结构>>看看,要容易理解一点 19:1:7 0010136049何军对老师说: 老师你好!我的C语言学的不是很好,我听数据结构不是很懂,请问我该怎么学这门课? // 第一最好要补上C语言,这样算法才能严格描述,存储结构就是具体的了.其次,C语言不好不会影响数据逻辑结构的理解和算法思想的思路 19:1:38 0010136036卿圣涛对老师说: 老师,书上P9页的数据关系有什么用处? // 只有明确了数据关系,才能确定数据操作. 非三元组的数据关系,也就不能定义后面的数据操作 19:2:11 0010136083张喻对老师说: 实时课的效果很不好,我们下面教学站对您电脑里的程序完全看不清楚。能不能解决一下。谢谢! // 知道了,下次尽可能用手写,字大一点 19:2:42 0010136041宋默雷对老师说: 书编的太枯燥,看着看着就谁着了!其实我不是个喜欢睡觉的人! // 找本专科用的<<数据结构>>看看,要容易理解一点 19:2:50 0010136039张煜对老师说: 老师能不能在考试的前夕,给我们一个考试范围或者是一份模拟题 // 期中考试题就是模拟 19:2:51 0010125039 陈祥对老师说: 能不能用email的群发把大家关心的问题发到各自的信箱里? // 你们上网来查询好了 19:3:29 0010136023张擎对老师说: 数据结构的所有概念是不是必须背下来? // 在理解的基础上再适当记忆 19:4:47 0010105147 陈李雅对老师说: 请问书第11页(7)“结束语句有”下的异常结束语中的异常代码具体指哪些? // 1,2,3,...-1,-2,...,由你自己定,exit()会把它返回的. 19:5:10 0010125025 王燕萍对老师说: 老师,迷宫问题可不可以用数字填充来解答啊?// 也可以 19:5:10 0010105154 汤亚萍对老师说: 老师,为什么在上机调试程序时用结束语句exit时总是出错,把改为return时就没有这条出错信息?// VC中没有exit()函数,要出错.TC有exit()函数 19:5:21 0010136083张喻对老师说: 我的C语言学的很差,所以觉得数据结构很难,老师能不能推荐一些基础,简单的书?谢谢!// 只要是<<数据结构>>都可以,找本专科用的<<数据结构>>看看,要容易理解一点 19:6:16 0010136058刘博颍对老师说: 我们发的习题集大部分题都没有答案,你在实时课的时候应该多给我们分析做题的方法,这样我们就可以逐类旁通 // 好的 19:7:32 0010136036卿圣涛对老师说: 老师,为什么看书看的懂,做题却不会?还有上时实课时将字写大些,因为看不见? // 看懂书已经很不错,但还要注意理解本质,才能触类旁通 19:7:44 0010105154 汤亚萍对老师说: 老师,课本24页那个FOR循环是不是有问题? // 没有问题 19:7:44 0010136063王建勇对老师说: 老师,数据结构中的算法讲的都太抽象。在实时课上可以讲的详细一点么? // 算法就是对接一类问题同用的求解过程,一定具有抽象性,你可以用具体的事例代入算法,这样算法就容易理解了 19:8:35 0010136073彭莎对老师说: 老师,作业布置的有很多不会做,而且没有答案可以参考,能不能在课件中讲一下? // 注意实时课 19:8:39 0010125039 陈祥对老师说: 我怎么觉得数据结构很独立,和c虽然有联系,可没办法把他们系统的联系在一起?请问这个是为什么? // 看前面类似的问题 19:10:4 0010136039张煜对老师说: 老师上课的时候应给多讲一些典型例题,让我们掌握作题的方法 // 注意实时课 19:14:4 0010136036卿圣涛对老师说: 老师,在结点P前插S结点的语句是什么? // 不是一个语句,而是一段算法才能完成.看<<题集>>p14.之2.6 19:15:6 0010105184常昕对老师说: 徐老大,我们这本教材实在是不大好懂,我在论坛上问了一下别的大学的同学都说严蔚敏的书不大好懂,能否推荐一本浅显易懂的教材或参考资料!!! // 找本专科用的<<数据结构>>看看,要容易理解一点 19:15:33 0010136039张煜对老师说: 老师我们平时应该买些什麽资料,帮助学好数据结构呢? // 找本专科用的<<数据结构>>看看,要容易理解一点 19:15:34 0010105147 陈李雅对老师说: 老师,书16页程序段for(i=2;i<=n;++i) for(j=2;j<=i-1;++j){++x;a[i,j]=x}语句频度表达式(n-1)(n-2)/2是怎么来的? // ++x的语句频度也是它的执行次数,共1+2+3+...+(n-1)次,即是答案 19:15:40 0010105085 王英俊对老师说: 老师你以后上实习课时能不能讲几道完整的程序?// 可以考虑 19:17:4 0010129120 刘培江对老师说: 老师,你好!对课本上的程序很难理解,尤其是那种函数名不知道是什么意思,请明示。谢谢! // 请英语字典帮忙 19:17:15 0010136041宋默雷对老师说: 老师,请问怎么才能即学好这一门课,又不觉得枯燥?这个问题请务必回答我! 19:17:50 0010136030闻生科对老师说: 老师,课程我觉得上得太快了 // 已经很慢了,否则来不及上 19:18:25 0010130014 仝传博对老师说: 老师,请给点时间讲一下书后的习题好吗,最好通过完整的c语言程序来描述,ok? // 可以考虑 19:18:59 0010125087 江波对老师说: 能不能推荐与此类教材相匹配的,且通俗易懂的辅导书? // 只要是<<数据结构>>都可以,找本专科用的<<数据结构>>看看,要容易理解一点 19:18:59 0010105084 王盛对老师说: 老师,现在的课对于我们下面教学站的人来说,几乎上什么都不知道,图象模里模糊,看也看不清楚,我们该怎么办?? // 请与教学站老师联系,看看是否是设备原因 19:19:15 0010136073彭莎对老师说: 老师,数据结构要上几学期? // 一学期 19:19:55 0010105043 杨洁对老师说: 老师你的课让我得很累,你能让我们轻松一点吗? // 找本专科用的<<数据结构>>看看,要容易理解一点 19:19:56 0010105085 王英俊对老师说: 书上的基本操作是否都要速记 // 不需要 19:20:15 0010126034 于海慧对老师说: 作业方式以什么形式公布?可不可以在答疑课上讲一下 // 现在就是这样呀 19:20:18 0010122111 陈静对老师说: 老师能不能多讲一些习题与例子,帮助我们理解 // 尽可能 19:20:29 0010130014 仝传博对老师说: 老师,请讲一下p65.中的第一个程序。 // 如循环队列,关键是"%MAXQSIZE"使得"循环"成为可能 19:21:15 0010136043汤丽对老师说: 老师,写算法要掌握那些基本点? // 首先要明确算法的功能,其次确定形式参数,哪些数据输入?哪些输出?最后安排算法步骤,以期达到功能 19:21:48 0010136066杨洪波对老师说: 老师好,能不能问一个问题,数据结构是建立在那里一门课之上的.让我们听的云头雾水,而且数据结构很抽象我们很难理解. // 说得简单一些,数据结构是编程解决实际问题的技巧和方法.C语言,离散数学,高等数学是基础 19:22:39 0010136001魏敬政对老师说: 题集22页的3.3中while(!StackEmpty(s)) {Pop(s,y); printf(y);};是什么意思,能不能讲讲 // 把栈中的每个元素取出并打印 19:24:4 0010125013 王凯对老师说: 老师请问本门课程的考题形式是什么样的? // 填空,问答,算法. 与作业类似 19:24:53 0010136005李一梁对老师说: 徐老师好,众所周知,数据结构很难学,象有些不易理解的问题,我们是否可以象英语那样死记下来。 // 这样毫无意义 19:25:15 0010136050王文娟对老师说: 书本难了,能不能讲多一些习题,从基础的讲起 // 找本专科用的<<数据结构>>看看,要容易理解一点 19:25:41 0010136080李朋飞对老师说: 老师,上实时课的时候为什么不讲一些数据结构的例题呢?这样考试我们就不用怕了呀! 19:26:2 0010113011 汪秀平对老师说: 你好!老师。 请问顺序队列不大懂能说一说吗? // 顺序队列是指用顺序存储结构(通常是一维数组)表示队列 19:26:28 0010136028吕涛对老师说: 老师好,请问离散数学没学好,数据结构学起来是不是很难啊? // 影响不是太大,数据结构用到的每个概念都会重新介绍 19:26:33 0010136036卿圣涛对老师说: 老师,我怎么觉得你隐身了 19:27:6 0010129119 华伟对老师说: 什么是数据结构 // 主要介绍数据的关系,存储和操作. 19:27:10 0010129133 严海萍对老师说: 以后上课的时候,能不能把那个程序举例讲的详细点,笔记翻的慢一些,以便记录 // 可以考虑 19:42:25 0010129119 华伟对老师说: 本书在编排上有一些问题 ,就如"&"在初始化是有些好象没有 // 书上没有错, 带&的参数,它的数据还要从函数中传到调用函数(即双向传递),而不代&的参数,数据只是传入(即单向传递) 19:47:14 0010136009谢俊对老师说: 老师你好,书上的程序与课件上的不同,以哪个为准? // 书上的算法用类C语言,有时要修改后才能在计算机上运行,课件中的程序有的已经做了修改 19:47:30 0010105084 王盛对老师说: 老师,我想问一下,对于我们计算机专业的人来说,考级的话,应该去考几级 // 三级 19:49:11 教师回答严海萍: 所有的定义及概念要理解,不要死背. 19:49:24 0010136050王文娟对老师说: 考计算机二级与数据结构有联系吗?还有程序员考级.难吗? //考计算机二级与数据结构没有直接关系,当然学过数据结构会更容易通过,考三级与程序员主要是数据结构! 19:56:12 0010136036卿圣涛对老师说: 老师,书上的算法2.11看不懂 // 三言两语说不清,请教本地辅导老师 以下是实验题的要求,同学们可以对照自己看一下:   《数据结构与算法》的算法实验要求: 根据目前远程教育计算机专业的学生的实际情况和他们的 C语言基础, 严格按照本科教学要求进行算法实验上机并完成相应的实验报告, 对多数 学生是有一定困难的. 因此我们把实验要求分成五个层次, 以适应不同基 础的学生掌握学习的不同进度, 希望学生不断往更高层次要求自己, 最终 能达到我们的基本要求. 实验辅导教师也可以根据当地学生的具体情况, 本着能提高学生两个 能力(C语言的编程和调试能力, 算法设计和分析能力)的目的, 循序渐进地 引导学生掌握算法和程序的上机实验, 并参考《题集》的实验报告范例书写实 验报告. 一. 熟练使用c语言的开发环境(如TC2.0或VC6.0)进行一般问题的程序 设计和调试分析的能力 二. 编写主程序调用调试教材中描述并在课堂中详细讲解过的算法 三. 完成习题中的算法设计题并书写报告 四. 养成良好的程序设计风格和提高算法描述和算法分析的能力 五. 选择一到二个《题集》中的实习题,独立完成一个小的应用系统 并规范书写实验报告   以上一至三层次作为本课程的最基本的实验要求,四和五层次作为有能力 的学生的提高要求。下面就每一层次的要求作如下说明。 一. 熟练使用c语言的开发环境(如TC2.0或VC6.0)进行一般问题的程序 设计和调试分析的能力   该能力实际上是预修课C语言的要求,由于有相当部分学生C语言掌握不 好, 影响了数据结构算法的描述和理解. 所以开始应该注意弥补C语言的能 力. 根据我们经验, C语言中函数定义与调用, 指针, 类型定义的概念, 结构 的意义等难点却是数据结构算法描述的重点, C语言的这些障碍严重影响了 学生学习数据结构的兴趣并阻碍了对数据结构算法的理解. 所以教师在鼓励 学生主动补习C语言知识的同时, 有意识安排一些符合学生基础的程序设计 练习作为本课程实验的前导补充. 本课程的算法题目可以推后几周上机. 二. 编写主程序调用调试教材中描述并在课堂中详细讲解过的算法   为加深对课堂讲解的算法的理解,选择部分(尤其是基础部分,如线性 表,堆栈与队列等的顺序和链式存储的最常用的基本操作)算法进行上机调 试,如第二章的InitList_Sq、ListInsert_Sq和ListDelete_Sq一组算法和 第三章的InitStack、GotTop、Push和Pop一组算法等。这些算法是后面章节 更复杂算法的基础(如树和图中的算法),算法的积累过程象滚雪球,所以 基础必不可少。   调试这些算法要注意两点。一是适当修改教材算法中的非C语言的语句 和增加部分局部变量的定义。由于算法的描述是类C语言的,所以要改为完整的 C语言的函数,好在需要修改(增加)的地方不多。二是书写一个主程序来 调用并调试描述算法的函数。主程序的设计要根据算法的功能和调试需要来 编写。 三. 完成习题中的算法设计题并书写报告   我们在《题集》的每章的算法设计题中选择少量“小问题”的算法设计 练习,以培养和提高学生自己动手写算法的能力。这些算法或者与教材中基 本算法类似,或者是延伸,或者是它们的应用。   做这些算法设计题时,要注意过程的完整性:题目理解、功能分析、算 法思想、描述算法的C函数、调用算法的主程序、运行结果、调试过程的体会 等等,都尽可能书写出来。养成书写文档的好习惯。 四. 养成良好的程序设计风格和提高算法描述和算法分析的能力 五. 选择一到二个《题集》中的实习题,独立完成一个小的应用系统 并规范书写实验报告