美文网首页
双端队列回文词判定

双端队列回文词判定

作者: 清水秋香 | 来源:发表于2020-02-20 21:59 被阅读0次
  • 回文词”判定
    ❖ “回文词”指正读和反读都一样的词 如radar、madam、toot
    中文“上海自来水来自海上”
    “山东落花生花落东山”
    ❖ 用双端队列很容易解决“回文词”问题 先将需要判定的词从队尾加入deque
    再从两端同时移除字符判定是否相同,直到 deque中剩下0个或1个字符
from pythonds.basic.deque import Deque

def palchecker(aString):
    chardeque = Deque()
    for ch in aString:
        #从队尾添加数据
        chardeque.addRear(ch)

    stillEqual = True
    while chardeque.size() > 1 and stillEqual:
        #从头部取出数据
        first = chardeque.removeFront()
        #从尾部取出数据
        last = chardeque.removeRear()
        #不想等说明不是回文词,都想等剩下一个是回文词
        if first != last:
            stillEqual = False
    return stillEqual

print(palchecker("lsdkjfakf"))
print(palchecker('radar'))

相关文章

  • 双端队列回文词判定

    回文词”判定❖ “回文词”指正读和反读都一样的词 如radar、madam、toot中文“上海自来水来自海上”“山...

  • 7.双端队列Deque

    目录:1.双端队列的定义2.双端队列的图解3.双端队列定义操作4.双端队列的实现 1.双端队列的定义 2.双端队列...

  • 用python实现Deque双端队列,解决回文词的判定

    双端队列Deque是一种有次序的数据集,跟队列相似,其两端可以称作“首”“尾”端。但deque中数据项既可以从...

  • 双端队列

    双端队列 双端队列是与队列类似的项的有序集合。双端队列有两个端部,首部和尾部,并且项在集合中保持不变。双端队不同的...

  • 数据结构-队列(Queue)-FIFO

    数据结构-队列(Queue)-FIFO 队列的接口设计 双端队列-Deque 循环队列-CircleQueue 双...

  • 数据结构与算法之队列(五)

    目录 队列简介队列的接口设计用栈实现队列双端队列实现循环队列实现循环双端队列 一 简介 队列是一种特殊的线性表,只...

  • 队列 - 双端队列 - 循环队列 - 循环双端队列

    队列是一种特殊的线性表,只能在头尾两端进行操作队尾(rear):只能从队尾添加元素,一般叫做 enQueue,入队...

  • 数据结构之「双端队列」

    什么是双端队列? 双端队列(deque)是指允许两端都可以进行入队和出队操作的队列,deque 是 “double...

  • 数据结构(四) -- 双端队列

    一,双端队列 队列的一种变型--双端队列(Double-ended queue),简称为Deque。顾名思义,也就...

  • ARTS第八周20200712

    Algorithm 设计循环双端队列 设计实现双端队列。 你的实现需要支持以下操作:MyCircularDeque...

网友评论

      本文标题:双端队列回文词判定

      本文链接:https://www.haomeiwen.com/subject/qwbfqhtx.html