题解 | #点击消除#

点击消除

http://www.nowcoder.com/practice/8d3643ec29654cf8908b5cf3a0479fd5

采用栈的方式,依次将字符串s中的字符放入栈中。当栈顶元素与待放入元素相同时,弹出栈顶元素。

def deduplication(s):
    stack = []
    for i in range(len(s)):
        if len(stack) == 0: # 栈为空时,直接放入字符
            stack.append(s[i])
        else:
            if stack[-1] == s[i]: # 栈顶元素与待放入元素相同时,弹出栈顶元素
                stack.pop()
            else:
                stack.append(s[i]) # 否则直接放入元素
    if len(stack) == 0:
        return 0
    else:
        s = ''.join(stack) # 将列表字符进行拼接为字符串
        return s
s = input()
print(deduplication(s)) # 输出结果
全部评论

相关推荐

06-27 12:30
延安大学 C++
实习+外包,这两个公司底层融为一体了,如何评价呢?
一表renzha:之前面了一家外包的大模型,基本上都能答出来,那面试官感觉还没我懂,然后把我挂了,我都还没嫌弃他是外包,他把我挂了……
第一份工作能做外包吗?
点赞 评论 收藏
分享
昨天 16:13
嘉应学院 Python
xiaolihuam...:很明显骗子,如果是hr直接约你面试了,哪用得着内推,如果是员工的话,你得多优秀,一线员工直接加你微信,
点赞 评论 收藏
分享
07-02 18:09
门头沟学院 Java
苍穹外卖和谷粒商城这俩是不是烂大街了,还能做吗?
想去重庆的鸽子在吐槽:你不如把这俩做完自己搞明白再优化点再来问 何必贩卖焦虑
点赞 评论 收藏
分享
评论
1
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务