LeetCode 第30题 Substring with Concatenation of All Words【滑动窗口】(Java)

原题地址为:https://leetcode.com/problems/substring-with-concatenation-of-all-words/

要求

给定字符串s,和有一个单词列表words,每个词长度相等。在s中寻找,包含全部词,且每个词只出现一次,没有任何多余其他字符的子串。

例 1:

输入:

     s = “barfoothefoobarman”,

    words = [“foo”,”bar”]

输出:  [0,9]

    0,9分别对应了”barfoor”和”foobar” 

例 2:

输入:

    s = “wordgoodgoodgoodbestword”,

    words = [“word”,”good”,”best”,”word”]

输出: []

继续阅读

LeetCode 第3题 Longest Substring Without Repeating Characters【滑动窗口】(Java)

原题地址: https://leetcode.com/problems/longest-substring-without-repeating-characters/

要求如下:

给定一个字符串,找出最长的没有重复字符的子串。

例 1:

    输入为: “abcabcbb”

    输出位: 3

    答案是”abc”,长度为3。

例 2:

    输入为: “bbbbb”

    输出位: 1

    答案是”b”,长度为1。

例 3:

    输入为: “pwwkew”

    输出位: 3

    答案是”wke”,长度为3。

继续阅读

Leetcode 第2题 Add Two Numbers题解 (Java)

原题地址:https://leetcode.com/problems/add-two-numbers/

难度:中级

题目:

这题的基本意思是,给你两个非空的链表表示了两个正整数。每一个节点表示一位数字,按照反序(个位数在最前面)。把两个数字加起来,返回一个代表和的链表。

你可以假设这两个数字都不带前导0,除非0这个数字本身。

示例为:

输入:(2 -> 4 -> 3) + (5 -> 6 ->4)

输出:7 ->0 -> 8

解释:342 + 465 = 807

继续阅读

Leetcode第1题 Two Sum题解(Java)

前言

我是一个非科班出身的程序员,所以伴随着职业生涯中的很多点,我们都有对因为出身而知识匮乏的恐惧。所以,在我进入职业生涯没有多久,我就买齐了大学计算机科学的教材硬看。所以,虽然是非科班出身,算法和数据结构对我来说并不陌生。那时候,我对TCP/IP详解,对编译原理,对信息检索等大部头也有深刻的兴趣。

继续阅读