美文网首页
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