网站大量收购闲置独家精品文档,联系QQ:2885784924

2025年软考教材分享:程序员考试考点分析与真题详解(第4版).pdfVIP

2025年软考教材分享:程序员考试考点分析与真题详解(第4版).pdf

  1. 1、本文档共78页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

长风破浪会有时,直挂云帆济沧海。——李白

程序员考试考点分析与真题详解(第4版)

第1章数据结构与算法

数据结构是指数据对象及其彼此关系和构造方式,一个数据结构S可以用一个二元

组表示为S=(D,R)。其中,D是数据结构中的数据的非空有限集合,R是概念在D上的

关系的非空有限集合。在数据结构中,结点与结点间的彼此关系称为数据的逻辑结构,数据

在计算机中的存储形式称为数据的存储结构。

数据结构按逻辑结构不同分为线性结构和非线性结构两大类,其中非线性结构又可

分为树形结构和图结构,而树形结构又可分为树结构和二叉树结构。

依照考试大纲的要求,在数据结构与算法方面,要求考生掌握以下知识点。

1.常常利用数据结构

数组(一维数组、二维数组、静态数组、动态数组)、线性表、链表(单向链表、

双向链表、环形链表)、队列、栈、树(二叉树、查找树)和图(邻接矩阵、邻接表)等的

概念、存储和操作。

2.常常利用算法

(1)排序算法、查找算法、数值计算算法、字符串处置算法、递归算法、最小生

成树、拓扑排序和单源点最短路径求解算法、图的相关算法。

(2)算法与数据结构的关系、算法效率、算法设计、算法描述(流程图、伪代码、决

策表)、算法的复杂性。

1.1算法设计概述

英雄者,胸怀大志,腹有良策,有包藏宇宙之机,吞吐天地之志者也。——《三国演义》

算法是在有限步骤内求解某一问题所利用的一组概念明确的规则。通俗地说,就是

计算机解题的进程。在这个进程中,无论是形成解题思路仍是编写程序,都是在实施某种算

法。前者是推理实现的算法,后者是操作实现的算法。一个算法应该具有以下5个重要的

特征。

(1)有穷性:一个算法(对任何合法的输入值)必需老是在执行有穷步以后结束,

且每一步都可在有穷时间内完成。

(2)肯定性:算法中每一条指令必需有确切的含义,读者理解时不会产生二义性。

在任何条件下,算法只有唯一的一条执行路径,即对于相同的输入只能得出相同的输出。

(3)输入:一个算法有零个或多个输入,以肯定运算对象的初始情况。所谓零个

输入是指算法本身定出了初始条件。这些输入取自于某个特定对象的集合。

(4)输出:一个算法有一个或多个输出,以反映对输入数据加工后的结果。没有

输出的算法是毫无心义的。

(5)可行性:一个算法是可行的,即算法中描述的操作都是可以通过已经实现的

大体运算执行有限次来实现的。

算法设计要求正确性、可读性、健壮性、高效率与低存储量需求。

效率指的是算法执行的时间。对于解决同一问题的多个算法,执行时间短的算法效

率高。存储量需求指算法执行进程中所需要的最大存储空间。二者都与问题的规模有关。

算法的复杂性是算法效率的气宇,是算法运行所需要的计算机资源的量,是评价算

法好坏的重要依据。可以从一个算法的时间复杂度与空间复杂度来评价算法的好坏。当将一

个算法转换成程序并在计算机上执行时,其运行所需要的时间取决于下列因素。

百学须先立志。——朱熹

(1)硬件的速度。例如,利用486仍是利用586.

(2)书写程序的语言。实现语言的级别越高,其执行效率就越低。

(3)编译程序所生成目标代码的质量。对于代码优化较好的编译程序其所生成的

程序质量较高。

(4)问

文档评论(0)

***** + 关注
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档