一个算法演示课件的制作(1)
2014-05-24 01:45
导读:计算机应用论文论文,一个算法演示课件的制作(1)在线阅读,教你怎么写,格式什么样,科教论文网提供各种参考范例:
摘 要 为了更加清楚了解递归和分治算法的执行情况,使用该算法具体分
摘 要 为了更加清楚了解递归和分治算法的执行情况,使用该算法具体分析了棋盘覆盖问题,然后利用Visual C 制作演示课件直观显示算法的执行步骤,在实际教学中取得了很好的效果。 关键词 递归,分治,Visual C ,课件 0 引言 算法与计算理论是计算机程序设计领域的灵魂,是发挥程序设计者严谨,敏锐思维的有效工具。任何的程序设计语言都试图将之发挥得淋漓尽致,它无可厚非的作为计算机专业最重要基础类核心课程。但对于初次接触算法设计的学习者而言,他们往往不清楚算法的具体执行情况,进而自己设计算法也变得相当困难。如:在学习递归和分治算法的时候,一些人只知道递归算法的执行有压栈和出栈的两个过程,对于程序究竟怎么执行,到最后还是一头雾水,而其他的动态规划算法、回溯算法、分支限界算法等则更难掌握。针对这一情况,本人在教学中设计了一些演示程序来直观反应程序的执行顺序,并取得了较好的效果。以下就棋盘覆盖算法演示程序为例介绍算法课件的制作。 1 棋盘覆盖问题分析

图1 一种特殊棋盘 如果规模已经足够小,则覆盖完毕;分割棋盘为4部分; 在一个2k×2k 个方格组成的棋盘中,恰有一个方格与其它方格不同,称该方格为一特殊方格,且称该棋盘为一特殊棋盘,如图1所示。在棋盘覆盖问题中,要用图2所示的4种不同形态的L型骨牌覆盖给定的特殊棋盘上除特殊方格以外的所有方格,且任何2个L型骨牌不得重叠覆盖。该问题可以采用分治法来求解,分治法的设计思想是,将一个难以直接解决的大问题,分割成一些规模较小的相同问题,以便各个击破,分而治之。将求出的小规模的问题的解合并为一个更大规模的问题的解,自底向上逐步求出原来问题的解。 当k