zoukankan      html  css  js  c++  java
  • LeetCode Notes_#28 Implement strStr()

    LeetCode Notes_#28 Implement strStr()

    Contents

    题目

    Implement strStr().

    Return the index of the first occurrence of needle in haystack, or -1 if needle is not part of haystack.

    Example 1:

    Input: haystack = "hello", needle = "ll"
    Output: 2

    Example 2:

    Input: haystack = "aaaaa", needle = "bba"
    Output: -1

    Clarification:

    What should we return when needle is an empty string? This is a great question to ask during an interview.

    如果输入是空字符串,应该返回0

    For the purpose of this problem, we will return 0 when needle is an empty string. This is consistent to C's strstr() and Java's indexOf().

    思路及解答

    思路

    • 题目要求
      从一个字符串haystack当中寻找needle子串,返回第一次出现的索引值

    • 思路

    1. 调用python字符串的自带方法
    1. 循环遍历
      一个一个比较

    解答

    class Solution(object):
        def strStr(self, haystack, needle):
            """
            :type haystack: str
            :type needle: str
            :rtype: int
            """
            #return haystack.find(needle)#抖机灵的做法....
            a=len(haystack)
            b=len(needle)
            i=0
            while(b<=a):
                if haystack[i:i+b]==needle:
                    return i
                i=i+1
                a=a-1
            return -1
    

    循环的做法 beat 100%
    今天的题貌似都比较简单...

    需要注意的点

    • 循环遍历的时候,范围只需要是[0,len(haystack)-len(needle)]就可以了,不需要从头到尾
    • needle是""的时候,正确答案是返回0,因为:无论haystack是什么,可以看做最开始有一个""
    a=""
    a[0:0]
    
    ''
    
  • 相关阅读:
    addEventListener和attachEvent的区别
    CSS鼠标手势
    css颜色代码大全
    js中showModalDialog的使用
    ajax详解
    JS中offsetTop、clientTop、scrollTop、offsetTop各属性介绍
    js中Ajax工作原理(转)
    浏览器版本信息判断整理
    常见浏览器User-Agent大全
    JS性能优化之怎么加载JS文件
  • 原文地址:https://www.cnblogs.com/Howfars/p/9836974.html
Copyright © 2011-2022 走看看