第四讲 线性表(三) 1/.

Slides:



Advertisements
Similar presentations
等可能性事件的概率(二) 上虞春晖中学数学组欢迎你! 1 本课件制作于 §10.5 等可能事件 的概率 ( 二 )
Advertisements

我们首先引入的计算概率的数学模型, 是在概率论的发展过程中最早出现的研究 对象,通常称为 古典概型.
一、模型与计算公式 二、基本的组合分析公式 三、概率直接计算的例子 第 1.3 节 古典概率 四、抽签与顺序无关 五、二项分布与超几何分布 六、概率的基本性质.
我国国有银行 资本构成及资本充足率变化 小组成员:金融 尹佳裕 王淼 刘钰 金融 吴昱.
南 通. 南通概述 南通,位于江苏省东部, 东抵黄海,南望长江。 “ 据江 海之会、扼南北之喉 ” ,隔江 与中国经济最发达的上海及 苏南地区相依,被誉为 “ 北上 海 ” 。 南通也是中国首批对 外开放的 14 个沿海城市之一 ,被称为 “ 中国近代第一城 ” 。 南通面临海外和内陆两大经 济辐射扇面,素有.
1 天天 5 蔬果 國立彰化特殊教育學校 延杰股份有限公司營養師:陳婷貽. 2 蔬果彩虹 579 蔬果彩虹 歲以內兒童,每天 攝取五份新鮮蔬菜水 果,其中應有三份蔬 菜兩份水果 蔬菜份數水果份數總份數 兒童 325 女性 437 男性 549.
林園高中適性入學 高雄區免試入學 及 特色招生介紹 1. 國中學生 國中教育會考 1 ( 每年五月 ) 特色招生 術科考試 五專 免試入學 ( 每年六月 ) 特色招生 甄選入學 高中高職 免試入學 擇一報到 林園高中適性入學  入學管道流程 2.
語言與文化通識報告 - 台日年菜差異 - 指導老師 : 葉蓁蓁 小組 : 日本微旅行 組員 :4a21b032 吳采玲 4a21b037 沈立揚 4a 洪雅芳 4a 陳楚貽 4a 王巧稜.
均衡推进,确保质量 08学年第一学期教学工作会议 广州市培正中学
黑木耳.
投資權證13問 交易所宣導資料(104) 1.以大盤指數為標的之權證,和大盤指數的連動性,為什麼比和期交所期指的連動性差?
如何把作文写具体.
第一章 人口与环境 第一节 人口增长模式.
第一节 人口与人种 第一课时.
解读我党发展史 思索安惠美好明天 主讲人:王辰武.
25.2 用列举法求概率 歙县漳潭中心学校 汪金茂
概率.
第5课 长江和黄河.
銓敘部研究規劃自願退休公務人員月退休金起支年齡延後方案座談會
瓦罐湯 “瓦缸煨汤”是流行于南方民间的一种风味菜肴。它采用一种制特的大瓦缸,其缸底可以烧火,缸内置有铁架,厨师将装有汤的小瓦罐一层层地码入缸内的铁架上,然后点燃木炭,借用木炭火产生的高温将瓦罐内的汤煨熟。
1.數學的難題 如下圖所示,你知道表格中的問號應填入什麼數字嗎?
科學論文 鰂魚涌街的衛生情況 作者:廖梓芯 學校:北角官立上午小學 班級:P.5A.
第九章 欧氏空间 §1 定义与基本性质 §2 标准正交基 §3 同构 §4 正交变换 §5 子空间 §6 对称矩阵的标准形
第九章 欧氏空间 §1 定义与基本性质 §6 对称矩阵的标准形 §2 标准正交基 §7 向量到子空间的 距离─最小二乘法 §3 同构
合肥学院外国语言系2012年度 学生工作表彰大会.
真题模拟 主讲:凌宇 时间:6月9日.
树立信心,沉着应战,吹响中考冲锋号 ——谈语文学科的复习备考及考试技巧.
时间与我们的世界 Pb 段心蕊.
请大家欣赏龙岩, 新罗区 上杭,武平, 连城,长汀, 永定,漳平 小吃和特产.
游 泳 理 论 课 位育中学 高蓉.
行政公文 纪 要 讲授人: 安学珍 铜仁职业技术学院.
“三生教育”专题 生命·生存·生活.
二代健保補充保費 代扣項目說明 簡報.
1.某公司需购一台设备,有两个方案,假定公司要求的必要报酬率为10%,有关数据如下:
第4课 “千古一帝”秦始皇.
第1节 压强.
第一节 人口与人种 光山一中 屈应霞.
第五章 二次型.
抚宁县第五中学 教学暨新课改推进工作会.
《社会体育指导员讲座》课程整体设计介绍 席永 副教授 2015 年 6 月
小论文的选题技巧与写作要领.
专项建设检查工作总结 本科试卷 毕业论文(设计) 合格课程 专项检查工作基本情况 专项建设的工作内容 专项建设检查工作情况
农业银行网上签约流程 宁夏金溢投资 内部资料 1.
国王赏麦的故事.
廉政會報專題報告 農地重劃工程 施工常見缺失 報告:吳東霖 製作:張昌鈴 日期:103年12月23日.
第十二章 建筑结构抗震基本知识 第 三 讲 教学目标: 1.掌握框架结构的抗震措施;
專案製作經驗談.
《成佛之道》序~第三章 圓融 /
数据结构概论 第2章 线性表 董黎刚 浙江工商大学信电学院
綜合所得稅基本介紹 財政部南區國稅局新化稽徵所 簡秀珍.
寻觅节日诗情.
紧扣课程标准 关注社会热点 —苏教版教材新增内容复习建议 南京市南湖第一中学 马 峰.
第四章 借贷记账法 在制造业中的应用.
大气的受热过程 周南中学.
触电预防与急救 杜芳艳.
金門縣重大空難應變機制-消防局 壹、消防搶救、滅火、緊急救護 一、派遣作為:
第2章 线性表(三) 1/.
第二章 线性表.
南瑞学堂 学员简明操作指南 上海时代光华教育发展有限公司 2013年.
王玲 第 2 章 线性表 王玲 2019/2/25.
香港傳統的農村生活.
使用服务平台办理离校 操作指南.
第二章 线性表.
学年第一学期领取教材明细查询的通知 学年第一学期学生使用的教材均在网上平台公示。现将有关事项通知如下:
直线与平行垂直的判定.
中国农业科学院博士后学术论坛 博士后基金申请的经验及体会 中国农业科学院生物技术研究所 秦 华 博士
第三章 线性表 3.1 线性表的类型定义 3.2 顺序存储的线性表 3.3 链式存储的线性表 3.4 有序表 3.5 顺序表和链表的综合比较.
戒波罗蜜多.
算法3.3 void InitList_sq(SqList &L,int msize=LIST_INIT_SIZE)
《液体压强》复习课 一、知识复习 二、例题讲解.
Presentation transcript:

第四讲 线性表(三) 1/

教学目标 掌握应用线性表的基本操作表示和实现一些更复杂的基本操作。 2/13

线性表的应用 线性表的合并 有序表的合并 1 2

线性表的合并 问题描述: 假设利用两个线性表La和Lb分别表示两个集合A和B,现要求一个新的集合 A=AB .

【算法步骤】 依次取出Lb 中的每个元素,执行以下操作: 在La中查找该元素 如果找不到,则将其插入La的最后 .

【算法描述】 void union(List &La, List Lb){ La_len=ListLength(La); Lb_len=ListLength(Lb); for(i=1;i<=Lb_len;i++){ GetElem(Lb,i,e); if(!LocateElem(La,e)) ListInsert(&La,++La_len,e); }

有序表的合并 问题描述: 已知线性表La 和Lb中的数据元素按值非递减有序排列,现要求将La和Lb归并为一个新的线性表Lc,且Lc中的数据元素仍按值非递减有序排列. La=(1 ,7, 8) Lb=(2, 4, 6, 8, 10, 11) Lc=(1, 2, 4, 6, 7 , 8, 8, 10, 11) .

【算法步骤】-有序的顺序表合并 (1) 创建一个空表Lc (2) 依次从 La 或 Lb 中“摘取”元素值较小的结点插入到 Lc 表的最后,直至其中一个表变空为止 (3) 继续将 La 或 Lb 其中一个表的剩余结点插入在 Lc 表的最后 La=(1 ,7, 8) Lb=(2, 4, 6, 8, 10, 11) Lc=(1, 2, 4, 6, 7 , 8, 8, 10, 11) .

【算法描述】-有序的顺序表合并 else *pc++=*pb++; } T(n)= void MergeList_Sq(SqList LA,SqList LB,SqList &LC){ pa=LA.elem; pb=LB.elem; //指针pa和pb的初值分别指向两个表的第一个元素 LC.length=LA.length+LB.length; //新表长度为待合并两表的长度之和 LC.elem=new ElemType[LC.length]; //为合并后的新表分配一个数组空间 pc=LC.elem; //指针pc指向新表的第一个元素 pa_last=LA.elem+LA.length-1; //指针pa_last指向LA表的最后一个元素 pb_last=LB.elem+LB.length-1; //指针pb_last指向LB表的最后一个元素 while(pa<=pa_last && pb<=pb_last){ //两个表都非空 if(*pa<=*pb) *pc++=*pa++; //依次“摘取”两表中值较小的结点 else *pc++=*pb++; } while(pa<=pa_last) *pc++=*pa++; //LB表已到达表尾 while(pb<=pb_last) *pc++=*pb++; //LA表已到达表尾 }//MergeList_Sq T(n)= S(n)= O(ListLength(LA)+ ListLength(LB))

有序链表合并--重点掌握 将这两个有序链表合并成一个有序的单链表。 要求结果链表仍使用原来两个链表的存储空间, 不另外占用其它的存储空间。 表中允许有重复的数据。

有序链表合并--重点掌握 La 1 7 8 Lb 2 4 6 8 10 11 La 1 2 4 6 7 8 10 11 合并后

【算法步骤】-有序的链表合并 (1)Lc指向La (2) 依次从 La 或 Lb 中“摘取”元素值较小的结点插入到 Lc 表的最后,直至其中一个表变空为止 (3) 继续将 La 或 Lb 其中一个表的剩余结点插入在 Lc 表的最后 (4) 释放 Lb 表的表头结点

有序链表合并(初始化) La 1 7 8 Lc = pc pa Lb 2 4 6 8 10 11 pb

有序链表合并( pa->data < =pb->data ) La(Lc ,pc) 1 7 8 pa Lb 2 4 6 8 10 11 pb pc->next = pa;

有序链表合并( pa->data < =pb->data ) La(Lc) 1 1 7 8 Pc Pa Lb 2 4 6 8 10 11 pb pc->next = pa; pc= pa;

有序链表合并( pa->data < =pb->data ) La(Lc) 1 1 7 8 Pc pa = pa->next; Pa Lb 2 4 6 8 10 11 pb pc->next = pa; pc= pa;

有序链表合并( pa->data >pb->data ) La(Lc) 1 1 7 8 Pc pa Lb 2 4 6 8 10 11 pb pc->next = pb;

有序链表合并( pa->data >pb->data ) La(Lc) 1 1 7 8 pa Lb 2 2 4 6 8 10 11 Pc pc= pb; pb pc->next = pb;

有序链表合并( pa->data >pb->data ) La(Lc) 1 1 7 8 pa Lb 2 2 4 6 8 10 11 Pc pc= pb; pb =pb->next; pb pc->next = pb;

pc-> next=pa?pa:pb; 有序链表合并 La(Lc) 1 7 8 pa(NULL) 2 4 6 8 10 11 pc pb pc-> next=pa?pa:pb;

有序链表合并 合并后 La(Lc) 1 7 8 delete Lb; 2 4 6 8 10 11

【算法描述】-有序的链表合并 void MergeList_L(LinkList &La,LinkList &Lb,LinkList &Lc){ pa=La->next; pb=Lb->next; pc=Lc=La; //用La的头结点作为Lc的头结点 while(pa && pb){ if(pa->data<=pb->data){ pc->next=pa;pc=pa;pa=pa->next;} else{pc->next=pb; pc=pb; pb=pb->next;} pc->next=pa?pa:pb; //插入剩余段 free(Lb); //释放Lb的头结点} T(n)= S(n)= O(1)

思考:要求合并后的表无重复数据,如何实现? La(Lc) 1 7 8 2 4 6 8 10 11 提示:要单独考虑 pa->data = =pb->data

作业 1. 已知集合A、B,求集合C=AUB算法,要求集合A、B和C均用采用链式和顺序存储结构表示。 2. 已知集合A、B,求集合C=A∩B算法,要求集合A、B和C均用采用链式和顺序存储结构表示。 实验一:线性表的基本操作及其应用 24/