如果使用与
图相关的知识,设计算法来找出一段程序代码中:
(1)定义了但未被使用的变量;
(2)使用了但没有被定义的变量;
(3)其他与变量相关的错误
我的初步想法是:
1.定义一个变量类,
Class Var
{
属性: name,type,isInit(是否初始化),initVal(初始化值),isUsed(是否被使用过);
方法: 一些基本方法;
}
2.程序代码中每个声明的变量(new个Var),作为图的一个结点,用
邻接表来实现图。
3.对使用的每个变量,对图进行搜索(BFS或者DFS),来看是不是被定义过的。(根据Var的name和type判断)并改变isUsed属性。
4.再对图遍历次,根据Var的isUsed属性看是否有定义了但没被使用的变量。
5.可以增加些Var属性,来判断是否有重复定义,是否初始化错误之类的。(
解决问题3)
请教各位JE上的大虾们,可以从下面几个方面但不限于谈谈自己看法(不用说的太复杂,说说思想就行):
1.对我的想法做出评价
2.如果必须用图,有没有更好的实现办法
3.不考虑用图,有没有更好的解决办法.(考虑O(n))
4.具体的编译器是怎么实现的这些问题的
分享到:
相关推荐
分治法是递归的一种应用模式,将一个问题分解成两个或更多的相同或相似的子问题,直到最后子问题可以简单的直接求解,原问题的解即子问题的解的合并。例如,快速排序和归并排序就是典型的分治算法。 接着,我们关注...
《王秋芬 算法设计与分析》是一本深入探讨算法设计与分析的教材,适合于计算机科学和技术、软件工程等相关专业的学生以及对算法感兴趣的读者。这本书全面讲解了算法设计的基本方法和分析技巧,旨在提升读者在面对...
《算法设计与分析》是计算机科学领域的一门核心课程,主要关注如何有效地解决问题,并通过算法的设计、实现和分析来优化计算过程。东北大学提供的这门课程涵盖了算法的基础理论和实践应用,旨在帮助学生掌握关键的...
算法设计与分析是计算机科学中一个重要的领域,涉及到解决问题的步骤、算法定义、算法的三要素、算法的属性、算法设计的质量指标、迭代法、分而治之法、贪婪法等知识点。本文将对这些知识点进行详细的解释和分析。 ...
通过在循环开始前设定一个不变量,并在循环的每次迭代过程中保持该不变量的真实性,最后通过不变量来证明算法的正确性。此方法在算法设计和分析中具有重要的作用。 ### 插入排序算法 插入排序是一种简单的排序算法...
算法设计与分析是计算机科学中一个非常重要的领域,它涉及到算法的设计、分析和实现。算法设计与分析的主要目标是设计和分析高效、可靠、可维护的算法。 在这里,我们讨论了 Maxsort 算法和冒泡排序算法这两种排序...
这个压缩包文件包含了她课程的相关资料,包括课件和作业答案,为学习者提供了一个全面理解算法设计与分析的资源库。 首先,我们要明白算法设计与分析是计算机科学中的核心课程,它涉及如何有效地解决问题和执行计算...
实验一 处理器调度 一. 实验内容 选择一个调度算法,实现处理器调度。 二. 实验目的 在采用多道程序设计的系统中,...第—题:设计一个按优先数调度算法实现处理器调度的程序。 运行环境:Microsoft Visual Studio 2005
《算法设计与分析》是计算机科学领域的一本经典教材,主要涵盖了算法的设计方法、分析技巧以及实际应用。这本书由陈慧南编著的第三版,提供了全面且深入的算法学习资源,尤其对于学习者来说,课后习题的答案是深化...
动态规划是书中重点讲解的一个概念,它常用于解决最优化问题,如背包问题、最长公共子序列等。课后答案会展示如何构建状态转移方程,以及如何通过填表法或自底向上的方式求解。 图算法部分包括了深度优先搜索(DFS...
在这个压缩包中,包含的是四套计算机算法设计与分析的期末试题及对应的答案,对于学习者来说,这是一个宝贵的复习资源。 1. **算法设计**:设计算法是解决问题的关键步骤,通常涉及数据结构的选择、问题分解和递归...
根据提供的文件内容,我们可以总结出以下关于《算法设计与分析》课程及其配套辅助教材的知识点: 1. 计算机算法设计与分析课程定位:该课程是一门面向设计的教育课程,居于计算机科学的核心地位。它主要教授计算机...
王晓东教授的《计算机算法设计与分析》第四版,不仅是一本广受赞誉的教材,也是一本深入浅出的实用指南,它为学生和专业人士提供了一个全面的视角来理解和应用算法。这本书的第四版经过全面更新,旨在反映算法领域...
总的来说,《算法分析与设计》的课下习题答案是一个宝贵的资源,它提供了实践算法设计理论的机会,帮助学生从理论到实践的过渡,提高解决实际问题的能力。通过深入学习和反复练习,学生将能够熟练运用各种算法,为...
《算法设计》是由Erik D. Demaine和Jorge L. Orecchia合著的一本经典教材,原作者为...不论是对计算机科学专业的学生还是在职工程师,这本书都是一个极好的学习工具,可以帮助他们提升算法思维和问题解决能力。
《计算机算法设计与分析》是计算机科学领域的一本经典教材,尤其在第三版中,它深入探讨了如何设计和分析各种算法,以提高程序效率和解决问题的能力。算法是计算机科学的基石,它涉及到一系列用于解决特定问题的步骤...
在本试卷——“中科大算法设计与分析试卷 2013年 研究生”中,我们可以预见到一系列针对研究生水平的算法相关问题,这些问题可能涵盖了基础算法、数据结构、复杂度分析等多个方面。 **基础算法** 基础算法通常包括...
《算法设计与分析基础》是计算机科学领域的一本经典教材,由Anany Levitin撰写,主要探讨了如何设计和评估算法的效率。这本书的第三版提供了全面的算法讲解,涵盖了从基本概念到复杂数据结构和高级算法设计策略的...
算法这个词对于非计算机从业人士而言,似乎就是晦涩、神秘的代名词。其实,算法在日常生活中随处可见。...通读全书,读者可以了解到计算机编程与算法的基本理念,也能对简单常用的算法有一个大概的理解。
- **分治策略**:将一个复杂的问题分成两个或更多的相同或相似的子问题,直到最后子问题可以简单的直接求解,原问题的解即子问题的解的合并。 - **递归关系**: - 例如,在分析快速排序的时间复杂度时,递归关系为 ...