From 6c06ec5cf458a67c13f25a9466b82c39e54d3d0f Mon Sep 17 00:00:00 2001 From: CyC2018 Date: Sun, 27 Oct 2019 21:58:04 +0800 Subject: [PATCH] auto commit --- docs/notes/Leetcode 题解 - 双指针.md | 14 ++++++++++++++ .../db5f30a7-8bfa-4ecc-ab5d-747c77818964.gif | Bin 0 -> 19269 bytes .../fcc941ec-134b-4dcd-bc86-1702fd305300.gif | Bin 0 -> 10733 bytes notes/Leetcode 题解 - 双指针.md | 14 ++++++++++++++ .../db5f30a7-8bfa-4ecc-ab5d-747c77818964.gif | Bin 0 -> 19269 bytes .../fcc941ec-134b-4dcd-bc86-1702fd305300.gif | Bin 0 -> 10733 bytes 6 files changed, 28 insertions(+) create mode 100644 docs/pics/db5f30a7-8bfa-4ecc-ab5d-747c77818964.gif create mode 100644 docs/pics/fcc941ec-134b-4dcd-bc86-1702fd305300.gif create mode 100644 notes/pics/db5f30a7-8bfa-4ecc-ab5d-747c77818964.gif create mode 100644 notes/pics/fcc941ec-134b-4dcd-bc86-1702fd305300.gif diff --git a/docs/notes/Leetcode 题解 - 双指针.md b/docs/notes/Leetcode 题解 - 双指针.md index 6488aa95..5edd694a 100644 --- a/docs/notes/Leetcode 题解 - 双指针.md +++ b/docs/notes/Leetcode 题解 - 双指针.md @@ -151,6 +151,20 @@ Explanation: You could delete the character 'c'. 题目描述:可以删除一个字符,判断是否能构成回文字符串。 +所谓的回文字符串,是指具有左右对称特点的字符串,例如 "abcba" 就是一个回文字符串。 + +使用双指针可以很容易判断一个字符串是否是回文字符串:令一个指针从左到右遍历,一个指针从右到左遍历,这两个指针同时移动一个位置,每次都判断两个指针指向的字符是否相同,如果都相同,字符串才是具有左右对称性质的回文字符串。 + +

+ +本题的关键是处理删除一个字符。在使用双指针遍历字符串时,如果出现两个指针指向的字符不相等的情况,我们就试着删除一个字符,再判断删除完之后的字符串是否是回文字符串。 + +在判断是否为回文字符串时,我们不需要判断整个字符串,因为左指针左边和右指针右边的字符之前已经判断过具有对称性质,所以只需要判断中间的子字符串即可。 + +在试着删除字符时,我们既可以删除左指针指向的字符,也可以删除右指针指向的字符。 + +

+ ```java public boolean validPalindrome(String s) { for (int i = 0, j = s.length() - 1; i < j; i++, j--) { diff --git a/docs/pics/db5f30a7-8bfa-4ecc-ab5d-747c77818964.gif b/docs/pics/db5f30a7-8bfa-4ecc-ab5d-747c77818964.gif new file mode 100644 index 0000000000000000000000000000000000000000..9b78e709df9262df380a6dc9fb6e7dca3d7e296a GIT binary patch literal 19269 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 Ockf?y(6F%t%Kruwg~Epb literal 0 HcmV?d00001 diff --git a/notes/Leetcode 题解 - 双指针.md b/notes/Leetcode 题解 - 双指针.md index aa08f977..515e661a 100644 --- a/notes/Leetcode 题解 - 双指针.md +++ b/notes/Leetcode 题解 - 双指针.md @@ -151,6 +151,20 @@ Explanation: You could delete the character 'c'. 题目描述:可以删除一个字符,判断是否能构成回文字符串。 +所谓的回文字符串,是指具有左右对称特点的字符串,例如 "abcba" 就是一个回文字符串。 + +使用双指针可以很容易判断一个字符串是否是回文字符串:令一个指针从左到右遍历,一个指针从右到左遍历,这两个指针同时移动一个位置,每次都判断两个指针指向的字符是否相同,如果都相同,字符串才是具有左右对称性质的回文字符串。 + +

+ +本题的关键是处理删除一个字符。在使用双指针遍历字符串时,如果出现两个指针指向的字符不相等的情况,我们就试着删除一个字符,再判断删除完之后的字符串是否是回文字符串。 + +在判断是否为回文字符串时,我们不需要判断整个字符串,因为左指针左边和右指针右边的字符之前已经判断过具有对称性质,所以只需要判断中间的子字符串即可。 + +在试着删除字符时,我们既可以删除左指针指向的字符,也可以删除右指针指向的字符。 + +

+ ```java public boolean validPalindrome(String s) { for (int i = 0, j = s.length() - 1; i < j; i++, j--) { diff --git a/notes/pics/db5f30a7-8bfa-4ecc-ab5d-747c77818964.gif b/notes/pics/db5f30a7-8bfa-4ecc-ab5d-747c77818964.gif new file mode 100644 index 0000000000000000000000000000000000000000..9b78e709df9262df380a6dc9fb6e7dca3d7e296a GIT binary patch literal 19269 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 Ockf?y(6F%t%Kruwg~Epb literal 0 HcmV?d00001