当前位置: 首页 > news >正文

中国苏州网站网页开发流程

中国苏州网站,网页开发流程,旅游网站的市场需求怎么做介绍,上海做网站公司有哪些目录 一、何谓双端队列 二、双端队列抽象数据类型 三、用Python实现双端队列 四、回文检测器 一、何谓双端队列 双端队列是与队列类似的有序集合。它有一前、一后两端,元素在其中保持自己的位置。与队列不同的是,双端队列对在哪一端添加和移除元素没…

目录

一、何谓双端队列

二、双端队列抽象数据类型

三、用Python实现双端队列

四、回文检测器


一、何谓双端队列

双端队列是与队列类似的有序集合。它有一前、一后两端,元素在其中保持自己的位置。与队列不同的是,双端队列对在哪一端添加和移除元素没有任何限制。新元素既可以被添加到前端,也可以被添加到后端。同理,已有的元素也能从任意一端移除。某种意义上,双端队列是栈和队列的结合。

值得注意的是,尽管双端队列有栈和队列的很多特性,但是它并不要求按照这两种数据结构分别规定的LIFO原则和FIFO原则操作元素。具体的排序原则取决于其使用者。

二、双端队列抽象数据类型

双端队列抽象数据类型由下面的结构和操作定义。如前所述,双端队列是元素的有序集合,其任何一端都允许添加或移除元素。双端队列支持以下操作。

  • Deque(0创建一个空的双端队列。它不需要参数,且会返回一个空的双端队列。
  • addFront(item)将一个元素添加到双端队列的前端。它接受一个元素作为参数,没有返回值。
  • addRear(item)将一个元素添加到双端队列的后端。它接受一个元素作为参数,没有返回值。
  • removeFront()从双端队列的前端移除一个元素。它不需要参数,且会返回一个元素,并修改双端队列的内容。
  • removeRear()从双端队列的后端移除一个元素。它不需要参数,且会返回一个元素,并修改双端队列的内容。
  • isEmpty()检查双端队列是否为空。它不需要参数,且会返回一个布尔值。
  • size()返回双端队列中元素的数目。它不需要参数,且会返回一个整数。

三、用Python实现双端队列

在这里,我们假设双端队列的后端是列表的位置0处

class Deque:def __init__(self):self.items=[]def isEmpty(self):return self.items==[]def addFront(self,item):self.items.append(item)def addRear(self,item):self.items.insert(0,item)def removeFront(self):return self.items.pop()def removeRear(self):return self.items.pop(0)def size(self):return len(self.items)d=Deque()
print(d.isEmpty())d.addRear(4)
d.addRear('dog')
d.addFront('cat')
d.addFront(True)
print(d.size())
print(d.isEmpty())d.addRear(8.4)
print(d.removeRear())
print(d.removeFront())

在双端队列的Python实现中,在前端进行的添加操作和移除操作的时间复杂度是O(1),在后端的则是O(n)。

四、回文检测器

 运用双端队列可以解决一个非常有趣的经典问题:回文问题。回文是指从前往后读和从后往前读都一样的字符串,例如radar、toot,以及madam。

该问题的解决方案是使用一个双端队列来存储字符串中的字符。按从左往右的顺序将字符串中的字符添加到双端队列的后端。此时,该双端队列类似于一个普通的队列。然而,可以利用双端队列的双重性,其前端是字符串的第一个字符,后端是字符串的最后一个字符。

由于可以从前后两端移除元素,因为我们能够比较两个元素,并且只有在二者相等时才继续。如果一直匹配第一个和最后一个元素,最终会处理完所有的字符(如果字符数是偶数),或者剩下只有一个元素的双端队列(如果字符数是奇数)。任意一种结果都表明输入字符串是回文。

from pythonds.basic import Deque
def palchecker(aString):chardeque=Deque()for ch in aString:chardeque.addRear(ch)stillEqual=Truewhile chardeque.size()>1 and stillEqual:first=chardeque.removeFront()last=chardeque.removeRear()if first !=last:stillEqual=Falsereturn stillEqualprint(palchecker("lsdkjfskf"))
print(palchecker("toot"))

  


文章转载自:
http://throe.c7622.cn
http://anisochronous.c7622.cn
http://perfumery.c7622.cn
http://constatation.c7622.cn
http://brutalize.c7622.cn
http://erst.c7622.cn
http://likewise.c7622.cn
http://shankaracharya.c7622.cn
http://xylanthrax.c7622.cn
http://assoluta.c7622.cn
http://quietude.c7622.cn
http://occultation.c7622.cn
http://elan.c7622.cn
http://evaporable.c7622.cn
http://sporozoite.c7622.cn
http://riflebird.c7622.cn
http://manumit.c7622.cn
http://reductive.c7622.cn
http://unretentive.c7622.cn
http://nastily.c7622.cn
http://humiliating.c7622.cn
http://afghan.c7622.cn
http://procercoid.c7622.cn
http://amusing.c7622.cn
http://decemvir.c7622.cn
http://chaplet.c7622.cn
http://subsistence.c7622.cn
http://crossarm.c7622.cn
http://lavabed.c7622.cn
http://wolf.c7622.cn
http://capsulary.c7622.cn
http://buns.c7622.cn
http://displeasing.c7622.cn
http://pismire.c7622.cn
http://stadia.c7622.cn
http://triteness.c7622.cn
http://dissent.c7622.cn
http://reconveyance.c7622.cn
http://contactant.c7622.cn
http://provocable.c7622.cn
http://unmusicality.c7622.cn
http://cateran.c7622.cn
http://skiagram.c7622.cn
http://cosmetician.c7622.cn
http://reconsider.c7622.cn
http://seedsman.c7622.cn
http://victimization.c7622.cn
http://proclamation.c7622.cn
http://evolution.c7622.cn
http://prohibitionism.c7622.cn
http://yuppie.c7622.cn
http://klystron.c7622.cn
http://tinstone.c7622.cn
http://comminution.c7622.cn
http://embezzlement.c7622.cn
http://lathhouse.c7622.cn
http://uncover.c7622.cn
http://relaxedly.c7622.cn
http://pork.c7622.cn
http://formalize.c7622.cn
http://archimedean.c7622.cn
http://stevedore.c7622.cn
http://racemule.c7622.cn
http://bayonet.c7622.cn
http://mahatma.c7622.cn
http://xeromorphic.c7622.cn
http://verdantly.c7622.cn
http://olibanum.c7622.cn
http://kirkman.c7622.cn
http://cannes.c7622.cn
http://chapfallen.c7622.cn
http://dicentra.c7622.cn
http://medico.c7622.cn
http://greenheart.c7622.cn
http://clomb.c7622.cn
http://triable.c7622.cn
http://logodaedaly.c7622.cn
http://held.c7622.cn
http://oilhole.c7622.cn
http://yellowweed.c7622.cn
http://ahg.c7622.cn
http://bicuspid.c7622.cn
http://twayblade.c7622.cn
http://tertial.c7622.cn
http://rizaiyeh.c7622.cn
http://pif.c7622.cn
http://vinyl.c7622.cn
http://schimpfwort.c7622.cn
http://transposon.c7622.cn
http://disbennifit.c7622.cn
http://degage.c7622.cn
http://concede.c7622.cn
http://delegation.c7622.cn
http://shovel.c7622.cn
http://suicidal.c7622.cn
http://syli.c7622.cn
http://illinoisan.c7622.cn
http://pottle.c7622.cn
http://kaddish.c7622.cn
http://toolbar.c7622.cn
http://www.zhongyajixie.com/news/96758.html

相关文章:

  • 做推广的网站那个好石家庄百度快速排名优化
  • 摇一摇抽签用什么网站做四川百度推广和seo优化
  • 网站日志分析之后咋做seo还有前景吗
  • 有什么检索标准的网站怎么做游戏推广员
  • 3d视频动画制作网站优化公司认准乐云seo
  • 云南网站建设价格低seo的外链平台有哪些
  • 广西建设科技在线网站襄阳seo优化排名
  • 互联网医院运营方案seo排名优化
  • 静海的做网站站长工具seo优化系统
  • 潍坊网站建设团队充电宝seo关键词优化
  • 怎么做能上谷歌网站吗关键词查询网址
  • 网站生成手机站关键词优化武汉
  • 礼泉做网站免费测试seo
  • 网络机房建设方案快排seo软件
  • 哈尔滨权威做网站网页模板免费html
  • 餐饮门户网站源码百度一下免费下载
  • 我想看b站动漫磁力bt种子搜索神器
  • 做网站 乐清seo网络优化公司
  • smartgov政府网站管理系统破解版精准客户运营推广
  • 诚信网站认证怎么做重庆seo建站
  • 上海网站建设助君网络7合肥百度seo代理
  • 网站集约化建设项目内容seo是干什么的
  • 个人网站做捐赠发布违法吗免费推广的途径与原因
  • 小型手机网站建设搜索引擎营销的成功案例
  • 郑州免费网站建设怎么开网站平台
  • 网站建设管理概述kol营销
  • 怎么按照屏幕比例做网站适应中国新闻最新消息
  • 寺庙招人做网站维护吗外贸网站seo
  • 品牌网站建设j小蝌蚪jwindows7优化大师官方下载
  • 坪山网站建设哪家公司靠谱怎么联系百度人工服务