冯毅《数据结》ch3
约瑟夫环(Joseph Circle) 问题描述: 编号为1,2,...,n的n个人按顺时针方向围坐一圈,每人持有一个密码(正整数)。现在给定一个随机数m0,从编号为1的人开始,按顺时针方向1开始顺序报数,报到m时停止。报m的人出圈,同时留下他的密码作为新的m值,从他在顺时针方向上的下一个人开始,重新从1开始报数,如此下去,直至所有的人全部出列为止。 请编写程序求出圈的顺序。 约瑟夫环(Joseph Circle) 例: 线性结构特点 在数据元素的非空有限集中 存在唯一的一个被称作“第一个”的数据元素 存在唯一的一个被称作“最后一个”的数据元素 除第一个外,集合中的每个数据元素均只有一个前驱 除最后一个外,集合中的每个数据元素均只有一个后继 线性表的逻辑结构 定义:一个线性表是n个数据元素的有限序列 线性表的顺序存储结构 顺序表删除 定义:线性表的删除是指将第i(1?i ? L.length)个元素删除,使长度为L.length的线性表 设Qi是删除第i个元素的概率,则在长度为n的线性表中删除一个元素所需移动的元素次数的平均次数为: 顺序表插入 定义:线性表的插入是指在第i(1?i ? L.length+1)个元素之前插入一个新的元素x,使长度为L.length的线性表 设Pi是在第i个元素之前插入一个元素的概率,则在长度为n的线性表中插入一个元素时,所需移动的元素次数的平均次数为: 优点 逻辑相邻,物理相邻 可随机存取任一元素 存储空间使用紧凑 缺点 插入、删除操作需要移动大量的元素 预先分配空间需按最大空间分配,利用不充分 表容量难以扩充 实现 LocateElem_L(L,e) :查找单链表中是否存在结点e,若有则返回指向e结点的指针;否则返回NULL 算法描述 它是一种动态结构,整个存储空间为多个链表共用 不需预先分配空间 插入、删除不需移动元素 指针占用额外存储空间 单链表的表长是一个隐含的值 在链表中,元素的“位序”概念淡化,结点的 “位置”概念加强 不能随机存取,查找速度慢 在单链表的最后一个元素之后插入元素时 需遍历整个链表 循环链表(Circular Linked List) 循环链表是表中最后一个结点的指针指向头结点,使链表构成环状 双向链表(Double Linked List) 单链表具有单向性的缺点 结点定义 线性表的应用举例 一元多项式的表示及相加 一元多项式的表示: typedef struct LNode { ElemType data; struct LNode *next; }LNode, *LinkList; LNode *h,*p; data next p 结点(*p) (*p)表示p所指向的结点 (*p).data?p-data表示p指向结点的数据域 (*p).next?p-next表示p指向结点的指针域 生成一个LNode型新结点:p=(LNode *)malloc(sizeof(LNode)); 系统回收p结点:free(p) 定义:结点中只含一个指针域的链表叫~,也叫线性链表 单链表 头结点:在单链表第一个结点前附设一个结点叫~ 头结点指针域为空表示线性表为空 L a1 a2 头结点 an ^ …... L 空表 ^ 头指针 L a1 a2 a3 an …… ^ 头指针 LinkList L; 单链表 GetElem(L, i ,e) :取第i个数据元素。若存在,其值赋给e并返回OK;否则返回ERROR 算法思路 p p p 头指针 L a1 a2 a3 an …… ^ Status GetElem_L ( LinkList L, int i, ElemType e) { p=L-next; //p指向第一个元素 j=1; //j做计数器 while( ) //顺链查找 { } if( ) //若i不存在 return ERROR; e=p-data; //取得第i个元素 return(OK); } LNode *p; int j; p==NULL || ji p!=NULL ji p=p-next; j++; 算法时间复杂度: O(n) 单链表基
您可能关注的文档
最近下载
- 2025年山东力明科技职业学院单招语文测试试卷大全.docx VIP
- 高考物理机械能常用模型最新模拟题精练专题31机械能+弹簧连接体+计算题(原卷版+解析).docx VIP
- 2025年湖南铁路科技职业技术学院单招职业技能考试题库及参考答案1套.docx
- 高考物理真题5年分类汇编专题10磁场(全国通用)(含解析).docx VIP
- 2025年成都七中自主招生物理试题 .pdf VIP
- 2025年城市管理协管员招聘考试(城市管理执法)历年参考题库含答案详解.docx VIP
- 保安服务方案 投标方案(技术标).doc
- 2024-2025学年人教版九年级上册化学期末专项训练:计算题(含解析).pdf VIP
- 【泰国投资促进委员会(BOI)】2025年投资促进项目申请指南.docx
- 陕西省09计价规则.pdf VIP
原创力文档

文档评论(0)