已看计算机软件技术基础-03 算法和数据结构2.pptx

已看计算机软件技术基础-03 算法和数据结构2.pptx

  1. 1、本文档共34页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
算法和数据结构数据结构入学问题住宿组织房间分配班级、专业分配不固定固定算法和数据结构数据结构数据结构的研究内容 数据的逻辑结构、数据的存储结构、数据的运算 数据的逻辑结构:Data-Structure = (D,R)其中:D是数据元素的集合,R是D上关系的集合 一般将数据结构分为两大类:线性数据结构和非线性数据结构。线性数据结构有线性表、栈、队列、串、数组和文件;非线性数据结构有树和图 程序中的数据运算是定义在数据的逻辑结构上的,但运算的具体实现要在存储结构(物理结构)上进行。每种逻辑结构都有一个运算集合。常用的运算有检索、插入、删除、更新、排序等算法和数据结构研究方法最基本的数据结构为表,其他数据结构都转化为表处理方法:研究数据结构的逻辑结构的运算性质研究数据结构的物理结构根据物理结构和运算性质写算法(集合)逻辑结构和物理结构是相对的算法和数据结构线性表线性表的逻辑结构是n个数据元素的有限序列: (a1, a2 ,a3,…an) n为线性表的长度(n≥0),n=0的表称为空表数据元素呈线性关系.必存在唯一的称为“第一个”的数据元素;必存在唯一的称为“最后一个”的数据元素;除第一个元素外,每个元素都有且只有一个前驱元素; 除最后一个元素外,每个元素都有且只有一个后继元素。所有数据元素ai在同一个线性表中必须是相同的数据类型算法和数据结构线性表线性表按其存储结构可分为顺序表和链表。用顺序存储结构存储的线性表称为顺序表;用链式存储结构存储的线性表称为链表线性表的基本运算主要有:在两个确定的元素之间插入一个新的元素;删除线性表中某个元素;按某种要求查找线性表中的一个元素,需要时,还可找到元素进行值的更新算法和数据结构顺序表和一维数组 将线性表中的数据元素依次存放在某个存储区域中,所形成的表称为顺序表。一维数组就是用顺序方式存储的线性表,其下标可看成元素的相对地址。顺序表的运算:插入删除查找\访问算法和数据结构顺序表和一维数组22266699885577579算法和数据结构顺序表和一维数组插入bool Insert(int numbers[], int *n, int num, int pos){ if (pos 0 || pos *n) return false; for (int i = *n; i pos; --i) numbers[i] = numbers[i-1]; numbers[pos] = num; *n += 1; return true; }算法和数据结构顺序表和一维数组删除bool Delet(int numbers[], int *n, int pos){ if (pos 0 || pos = *n) return false; *n -= 1; for (int i = pos; i *n; ++i) numbers[i] = numbers[i+1]; return true;}算法和数据结构顺序表和一维数组顺序表的运算void main() { int numbers[10]; int num = 0; Insert(numbers, num, 2, 0); Insert(numbers, num, 6, 1); Insert(numbers, num, 8, 2); Insert(numbers, num, 5, 3); Insert(numbers, num, 7, 4); Insert(numbers, num, 9, 2); Delete(numbers, num, 3);}算法和数据结构链表大洪小刚老王老徐算法和数据结构单链表struct Spy{ Code c; // 信息域 Spy *next; // 指针域};enum Code{ LaoWang, LaoXu, DaHong, XiaoGang};struct Station{ Spy *head; int num;};算法和数据结构单链表插入prevSpy* Insert(Code cd, Spy *prev, Station *st){}代号代号代号地址地址地址算法和数据结构单链表Spy* Insert(Code cd, Spy *prev, Station *st){ Spy *newspy = (Spy*)malloc(sizeof(Spy)); if(st-num == 0) { st-head = newspy; newspy-next = NULL; } else { newspy-next = prev-next; prev-next = newspy; } st-num += 1; return newspy;}插入算法和数据结构单链表删除prevbool De

文档评论(0)

文档精品 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:6203200221000001

1亿VIP精品文档

相关文档