讲课手稿-7

文章来源: http://thunderfyc.wordpress.com.cn

初赛
  选择
    数学问题(集合 真值表)
    数据结构(队列 栈 Hash 查找 排序的操作)
    计算机知识(硬件 软件 网络)
    编程原理(语言类别 编译原理 历史)

  数学
    排列组合
    概率等

  阅读
    2小2大的类型
    胡乱变量相互操作 变量表的记录
    指针操作 指向内存改变和内存记录的改变
    递归类 将递归每层都记录下来
    循环类 每次循环都作一个二维的变量表

    注意将大的程序段划分
    对于若干子的小程序 记忆程序功能
    可在对输入数据操作的时候 不需要再看程序操作 可以加速
    注意输出的格式

  填空
    终止条件
    循环范围
    递归语句
    输入输出部分
    主要计算部分

    读入题目之后 自己先构思一个程序
    将自己的程序和给出的程序进行比较
    可以判断填空部分需要的内容
    然后先填入 再阅读
    进行调整

文章来源: http://thunderfyc.wordpress.com.cn

程序设计
  读题
    确定抽象模型 判断问题规模

  建模
    根据问题规模确定适用的解决方法

  算法
    将粗略程序框架构建出来

  代码
    将每个粗略的子程序 分块写出
    子程序之间用变量交换信息
    结构化程序设计

    变量命名注意唯一性
    注意全局变量和局部的区别
    注意传值参变量是否允许修改
    变量注释

    注意程序的宽度拉伸
    在符号两边有空格
    4格缩进
    语句注释
   
    长度拉伸
    一行一句话
    不同功能子程序之间空行
    子程序注释

  测试
    可以在程序中添加调试代码
    临时输出一些变量
    注意备份程序

    对于要优化的程序
    写一个随机生成数据程序 生成小数据
    写一个保证正确的低效率程序
    通过不断的重复测试 找到WA的数据 调试

    白箱测试
    反复阅读代码
    判断可能出现的问题

  调试
    输出临时信息帮助判断
    信息过多可另写程序帮助判断

    分步调试
    逐个排除子程序的问题
    在子程序中找错误语句

    白箱调试
    判断是否完全符合题意
    所有情况都考虑到

混分
  边界条件输出

  打表输出
    逐个用低效算法计算存储后输出

  贪心
    用直观算法贪心计算
    通过不同的贪心策略来取最优

  输出定值

文章来源: http://thunderfyc.wordpress.com.cn

Comments are closed.

© 2008 Vain.Thunder’s Blog[CN]
Magic Vision | Design: NET-TEC of Hundefutter. Coding: Bildtapete of Brautschmuck.