c语言公共基础第一章.doc
《c语言公共基础第一章.doc》由会员分享,可在线阅读,更多相关《c语言公共基础第一章.doc(17页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第一章 数据结构与算法第一节 算 法一、算法的基本概念算法:是解题方案准确而完整的描述。二、算法的基本特征:* 1)可行性 2)确定性 3)有穷性 4)拥有足够的情报 /*输入输出*/ 三、算法的基本要素:1、算法中对数据的运算和操作 算术运算,关系运算,逻辑运算,数据传输2、算法的控制结构 顺序结构,选择结构,循环结构四、算法设计的基本方法:1、列举法:列举所有可能的情况2、归纳法:通过列举少量特殊情况,经过分析,最后找出一般关系。3、递推:指从已知的初始条件出发, 逐次推出所要求的各中间结果和最后结果。4、递归:复杂-简单-更简单-最简单5、减半递推技术(二分法):减半是将问题的规模减半,
2、而问题的性质不变,再重复减半(有序表)。6、回溯法:(警察破案)/*结果到条件*/ 线索-试探-成功 失败:返回重新找线索 五、算法的时间复杂度概念:指执行算法所需要的计算工作量(算法所执行的基本运算次数)六、算法的空间复杂度:概念:一般是指执行这个算法时所需要的内存空间。第二节 数据结构的基本概念一、 数据结构数据结构:是指相互关联的数据元素的集合(B)内容:1)表示数据元素的信息(D) 2)各元素之间的前后件关系(R)1、数据的逻辑结构:反映数据元素之间所固有的逻辑关系。 B=(D,R)父儿女例如: D=父亲,儿子,女儿R=(父亲,儿子),(父亲,女儿)D2D5D1D3D4D6 B=D,R
3、D=D1,D2,D3,D4,D5,D6R=D1,D2,D1,D3,D3,D4,D5,D4,D5,D62、数据的存储结构:是指数据的逻辑结构在计算机存储空间中的存放形式。注意:存储结构与逻辑结构可以相同,也可以不同,一种逻辑结构可以有多种存储结构。二、 数据结构的图形表示用方框表示元素(D)用有向线段表示前驱与后继(前件与后件)的关系例如:春夏秋冬 概念: 根结点:没有前驱(前件)的结点(春) 终端结点:没有后继(后件)的结点(冬)三、 线性结构和非线性结构线性结构满足如下条件:1、有且仅有一个根结点;2、每一个结点最多有一个前驱(前件),也最多有一个后继(后件);3、一个线性结构中插入或删除任
4、何一个结点后还是线性结构;4、如果一个数据结构不是线性结构,则称为非线性结构。第三节 线性表及其顺序存储结构一、 线性表的基本概念1、线性表的容量:存储单元个数2、线性表的长度:元素的个数3、线性表的顺序存储结构的基本特点:1)所有元素所占的存储空间是连续的;2)各数据元素在存储空间中是按逻辑顺序依次存放的。4、元素地址计算公式 Adr(ai)=adr(a1)+(i-1)*k A1起始地址 K每个元素所占空间长度例如:二、 顺序表的插入运算 特点:长度+1 元素向后移动插入前 插入后12345678910123456789101030405020 容量:10长度:4三、 线性表的删除运算 特点
5、:长度-1 元素向前移动删除前 删除后10805020401 12 23 34 45 56 67 7容量:7长度:5第四节 栈和队列DBCA一、 栈及其基本运算 top栈是一种特殊的线性表 bottom栈顶指针(top) 栈底指针(bottom)1、栈特点:1)“先进后出,后进先出”原则;2)只能在一端进行插入与删除元素这一端叫栈顶(top) 2、栈基本运算1)入栈的运算:top+1,然后插入元素 注: 有“上溢”错误。(满)2)出栈运算:首先将栈顶元素赋给一个指定的变量,top-1 注:可能有“下溢”错误。(空)3) 读栈顶元素:将栈顶元素赋给一个指定的变量,栈指针不变。四、 队列及其基本运
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 公共 基础 第一章
限制150内