- 1、本文档共49页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
本节课内容
§一、查漏补缺
❖双端队列、循环链表、双向链表。
❖GrahamScan算法(栈的应用)
§二、线性表的总结
§三、串。
Lyndonword(非考试内容)
关于FILO
问题:A…H可以通过一个栈变EDHGFCBA吗?
HGFEDCBAHGFEHGFDE
D
CC
BB
AA
HDEABCFGHDE
G
F预告:EXP03会让你编写
C一个程序:
B输入A~H的一个排列,
A判断它是否是FILO序列。
关于FILO的forbiddenpattern
(1,2,…n)(a,a,…,a)
12n
假设a,…,a是1..n的一个排列。问
1n
利用一个栈,能否将之排列为(1,…n)?
定义(a,…,a)是231-avoid的定理(Knuth)
1n
如果不存在ijk使得aaa。(a,…a)可以通过1个栈
kij1n
例:231不是231-avoid的。排列为(1,…,n)
53241也不是231-avoid的。它是231-avoid的。
ijk提示:归纳法
栈的应用:graham-scan算法
输入:p[0],…,p[n-1]是平面上n个点
(假定点不重合,任意三点不共线)。
输出:这些点的凸包。
具体来说,输出h表示凸包顶点数以及a[1],…a[h]
表示p[a[1]]…p[a[h]]为凸包上按逆时针排列的点。
00
1
33输出:
66h:4
2
a:0653
4
55
Graham-scanconvexhullalgorithm
算法思路:
1.选最低点。
教师资格证、中级网络工程师持证人
专注于计算机技术相关文章撰写,方案设计,方案实现等,方案的个性定制,修改,润色等,本人已有8年相关工作经验,具有扎实的文案功底
文档评论(0)