- 1
- 0
- 约1.08万字
- 约 9页
- 2019-03-13 发布于江苏
- 举报
赛·远程教育平台 『疑难解答』
下午编程题复习和应对策略
®
学赛软考学院 唐强
下午题中很重要的一块就是常用算法编程设计题,很多同学很惧怕这种题,一看就紧张,一紧张就大
脑空白,大脑一空白,试卷就空白或者乱填一气。经常在考完之后,有同学讲:“上午题还可以,下午题
砸了”,其所谓的“下午题砸了”往往就砸在常用算法设计这一块上。造成这种状况的原因有四:
1. 数据结构不过关。
大部分常用算法都用 了很多数据结构方面的知识,比如栈的操作、排序二叉树。下午题需要很
多数据结构基础来支撑,如链表、栈、队列、二叉树、图的各种操作,又如快速排序、直接插入排序、
希尔排序、冒泡排序。数据结构是算法设计的强力支撑之一,如果数据结构基础不扎实,谈合算法设
计?那我们如何夯实这个基础?我有如下建议:
l关注置顶的随机电子资源里的关于数据结构的资源,特别是一个整套的数据结构课件:
/course_ware/data_structure/web/chazhao/chazhao.htm ,里
面涵盖了大部分数据结构知识点,部分知识点还配有相应的动画和 C 语言源程序,是 习数据结
构基础的好网站。
l利用学赛首页的搜索引 ,输入关键字 “数据结构”,能找 一大堆数据结构方面的资料,其中还
有一些视频下载(我试过,一些视频要白天才开放)。
2.C 语言基础不过关。
基本的C 语言语法不了解。比如,i++和++i 的区别,单独就这两条语句来看的话,很难说明两者
之间的差别,要将其放 具体语境来比较。如果i 的初值为0。那么:
a[i++]=3;相当于两条语句:a[i]=3; i = i+1;顺序执行,执行的结果是a[0]的值为3,i 的
值为1。
而a[++i]=3 相当于两条语句:i = i+1;a[i]=3;顺序执行,执行的结果是a[1]的值为3,i 的
值为1。
一对比,就很明显了,i++表示先使用 i,然后让 i 自加1。而++i 却表示先让 i 自加1,然后才
使用i。
这个问题解决了,又来了另一个问题:可是很多同 记不准,常常搞反。我告诉大家一个技巧:
对于 i++,变量 i 在++之前,就表示先使用 i,然后才自加 1;对于++i,++在变量 i 之前,那么是先
自加1,然后使用变量i。那个在前就先使用那个。技巧常常体现在细微之处!!
3.很少编程或调试代码。
没有编过一行代码没有调试过一个程序,却要成为一个真正的有实力的合格的软件设计师或者程
序员,那是不可能的!!国外大师级的人物六七十岁了都在写代码,何况我们这等无 小卒?编写、调
试代码是任何一个合格的程序员、软件设计师、系统分析师的必经之路!
在调试过程中,也有一定的技巧。以程序员2002 年下午试题5 中为例,用非递归方法后序遍历
二叉树的过程中,元素 底是如何出栈入栈的?以下面的二叉树为例:
学赛 软考学院() (第 1 页 ,共 9 页)
电话:+86 0731 4433018 ,4430578,4445278 ,4445728
邮件:tr @
PDF 文件使用 pdfFactory Pro 试用版本创建
赛·远程教育平台 『疑难解答』
能运行的代码如下:
#include stdio.h
typedef struct node
{
int data;
struct n
您可能关注的文档
最近下载
- 文学类文本陈国凡《饭局》阅读练习及答案(湖南2022届高三下5月).docx VIP
- 地基基础 课程教案.doc VIP
- 电力专业英语词汇.doc VIP
- 色度-方法确认报告方法验证方法证实报告.docx VIP
- 《Python程序设计实验》课程大纲(本科).docx VIP
- 七年级上册第二单元+友谊的天空+课件-2026年 中考道德与法治一轮复习.pptx VIP
- 河流动力学概论绪论.pptx VIP
- 一种基于数字孪生的仿真推演系统.pdf VIP
- 7.2.2“白山黑水”——东北三省 课件 2025-2026学年人教版地理八年级下册.pptx VIP
- 2025年陕西省中考语文试卷真题及答案详解(精校打印版).docx
原创力文档

文档评论(0)