美文网首页
leetcode学习整理

leetcode学习整理

作者: 赵小闹闹 | 来源:发表于2019-10-11 16:55 被阅读0次

1.20 有效的括号
给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效。

有效字符串需满足:

左括号必须用相同类型的右括号闭合。
左括号必须以正确的顺序闭合。

class Solution:
    def isValid(self,s):
        stack = []
        map = {
            "{":"}","[":"]","(":")"
        }
        for x in s:
            if x in map:
                stack.append(map[x])
            else:
                if len(stack)==0:
                    return False
                else:
                    top_element=stack.pop()
                    if x==top_element:
                        continue
                    else:
                        return False
        return len(stack) == 0

知识点,堆栈是特殊的list.从尾部进,从尾部出,具有先进后出的属性。
stack = []
添加,stack.append()
取出最后一位,stack.pop()
2.26
知识点,循环写法

for fast in range(1, len(nums)):

3.二维数组,列表,元祖的行和列的查法
如 A=((1, 1, 1), (1, 1, 1),(1, 1, 1),(0, 0, 0))
或者A=[[1,2,3],[2,3,4],[4,4,5],[3,4,2]]
len(A)#查行=4
len(A[0])#查列=3
4.return
程序运行到所遇到的第一个return即返回(退出def块),不会再运行第二个return。
5.字符串常见操作

  • find
    查找字符串mystr中是否含有字符串str
    mystr.find(str)
  • count
    查找字符串mystr中字符串str出现的次数
    mystr.count(str)
  • replace
    把 mystr 中的 str1 替换成 str2
    mystr.replace(str1,str2)
  • capitalize
    把字符串的第一个字符大写
    mystr.capitailize()
  • startswith/endswith
    检查字符串mystr是否是以 str 开头/结尾
    mystr.startswith(str)
    mystr.endswith(str)
  • 换 mystr 中所有大写字符为小写/所有小写转换为大写
    mystr.lower()
    mystr.upper()

6.列表常见操作

  • list添加元素
    li.append("new")
    li.insert(2, "new")
  • 搜索元素所在位置
    li.index("example")
  • 删除元素
    li.remove("z") #删除第一次出现的元素
    li.pop() # pop 会做两件事: 删除 list 的最后一个元素, 然后返回删除元素的值。

相关文章

网友评论

      本文标题:leetcode学习整理

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