欢迎来到天天文库
浏览记录
ID:34358544
大小:448.21 KB
页数:10页
时间:2019-03-05
《计算机大数据结构与算法》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、实用标准第一章数据结构与算法1.1算法1、算法是指解题方案的准确而完整的描述。换句话说,算法是对特定问题求解步骤的一种描述。I=1,变量I赋值为1S=0,变量S赋值为0DOWHILEI<=100,循环结构,当I小于100时循环S=S+I,对I的值累加求和I=I+1,变量I的值没循环一次增加1LOOP,循环结构,遇到loop返回DO处重新循环MSGBOXS,输出求和变量S的值算法规定了解决某类问题所需的操作语句以及执行顺序,使其能通过有限的指令语句,在一定时间内解决问题。算法是一个操作序列、有限长度
2、,目的是解决某类问题。*:算法不等于程序,也不等于计算方法。程序的编制不可能优于算法的设计。2、算法的基本特征(1)可行性。针对实际问题而设计的算法,执行后能够得到满意的结果。(2)确定性。每一条指令的含义明确,无二义性。并且在任何条件下,算法只有唯一的一条执行路径,即相同的输入只能得出相同的输出。(3)有穷性。算法必须在有限的时间内完成。有两重含义,一是算法中的操作步骤为有限个,二是每个步骤都能在有限时间内完成。(4)拥有足够的情报。指的是有足够的输入和输出。*:综上所述,所谓算法,是一组严谨地
3、定义运算顺序的规则,并且每一个规则都是有效的,且是明确的,此顺序将在有限的次数下终止。3、算法的基本要素一个算法通常由两种基本要素组成:一是对数据对象的运算和操作;二是算法的控制结构。(1)算法中对数据的运算和操作每个算法实际上市按解题要求从环境能进行的所有操作中选择合适的操作所组成的一组指令序列。因此,计算机算法就是计算机能处理的操作所组成的指令序列。在一般的计算机系统中,基本的运算和操作有以下四类:①算术运算:主要包括加、减、乘、除等运算;②逻辑运算:主要包括与(AND)、或(OR)、非(NO
4、T)等运算;③关系运算:主要包括大于、小于、等于、不等于等运算④数据传输:主要包括赋值、输入、输出等操作。(2)算法的控制结构顺序、选择和循环。精彩文档实用标准4、算法的基本方法(计算机解题的过程实际上是在实施某种算法)(1)列举法(列举所有解决方案)根据提出的问题,列举所有可能的情况,并用问题中给定的条件检验哪些是需要的,哪些是不需要的。(2)归纳法(特殊->一般)适合于列举量为无限的情况通过列举少量的特殊情况,经过分析,最后找出一般的关系。(3)递推法(已知->未知)从已知的初始条件出发,逐次
5、推出所要求的各中间结果和最后结果。(4)递归法(逐层分解)将一个复杂的问题归结为若干个较简单的问题,然后将这些较简单的每一个问题再归结为更简单的问题(5)减半递推法“减半”是指将问题的规模减半,而问题的性质不变,所谓“递推”是指重复“减半”的过程。(6)回溯法复杂应用,找出解决问题的线索,然后沿着这个线索逐步多次“探”、“试”。5、算法复杂度主要包括时间复杂度和空间复杂度。算法的复杂度是衡量算法好坏的量度。(1)算法时间复杂度是指执行算法所需要的计算工作量,可以用执行算法的过程中所需基本运算的执行
6、次数来度量。影响计算机工作量的主要因素:第一:基本运算次数;第二:问题规模。下面的方法不能用来度量算法的时间复杂度:第一:算法程序的长度或算法程序中的语句(指令)条数;第二:算法程序所执行的语句条数;第三:算法程序执行的具体时间(2)算法空间复杂度是指执行这个算法所需要的内存空间。一个算法所用的内存空间包括:1)算法程序所占用的存储空间;2)输入的初始数据所占的存储空间;3)算法执行过程中的额外空间。6、考题练习:1)下列叙述正确的是()(A)算法就是程序(B)算法强调的是利用技巧提高程序执行效率
7、(C)设计算法时只需考虑结果的可靠性(D)以上三种说法都不对2)下面叙述正确的是()(A)算法的执行效率与数据的存储结构无关(B)算法的空间复杂度是指算法程序中指令(或语句)的条数(C)算法的有穷性是指算法必须能在执行有限个步骤之后终止(D)以上三种描述都不对3)下列叙述中正确的是()(A)一个算法的空间复杂度大,则其时间复杂度也必定大(B)一个算法空间复杂度大,则其时间复杂度必定小精彩文档实用标准(C)一个算法的时间复杂度大,则其时间复杂度必定小(D)以上三种说法都不对4)算法的空间复杂度是指(
8、)(A)算法程序中变量的个数(B)算法程序中的指令条数(C)算法程序中各控制变量所占的额外空间(D)算法执行过程中所需要的存储空间1.2数据结构的基本概念1、基本概念:1)数据:在计算机科学中是指所有能输入到计算机中并被计算机程序处理的符号的总称。2)数据元素:数据的基本单位,在计算机程序中通常作为一个整体进行考虑和处理。3)数据结构:是指相互有关联的数据元素的集合。线性表栈线性结构队列数据的逻辑结构树形结构非线性结构图形结构顺序存储数据的存储结构链式存储数据的运算:检索、排序、插
此文档下载收益归作者所有