From bbbf343971e1a0e5dc086faecf66bd226d0a89e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lars=20M=C3=BCller?= <34514239+appgurueu@users.noreply.github.com> Date: Fri, 1 Jul 2022 19:22:04 +0200 Subject: [PATCH] merge: Fix IsPalindrome Big-O analysis (#1054) * Fix IsPalindrome Big-O analysis * Updated Documentation in README.md Co-authored-by: github-actions <${GITHUB_ACTOR}@users.noreply.github.com> --- DIRECTORY.md | 1 + String/IsPalindrome.js | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/DIRECTORY.md b/DIRECTORY.md index 315810f06..3793104e2 100644 --- a/DIRECTORY.md +++ b/DIRECTORY.md @@ -299,6 +299,7 @@ * [FormatPhoneNumber](String/FormatPhoneNumber.js) * [GenerateGUID](String/GenerateGUID.js) * [HammingDistance](String/HammingDistance.js) + * [IsPalindrome](String/IsPalindrome.js) * [KMPPatternSearching](String/KMPPatternSearching.js) * [LevenshteinDistance](String/LevenshteinDistance.js) * [Lower](String/Lower.js) diff --git a/String/IsPalindrome.js b/String/IsPalindrome.js index 27dca7151..60c1c313a 100644 --- a/String/IsPalindrome.js +++ b/String/IsPalindrome.js @@ -10,7 +10,8 @@ * Big-O Analysis * Time Complexity - O(N) on average and worst case scenario as input is traversed in linear fashion - - O(N) on best case scenario, even when input has length of 1, because toString() method takes O(N) + - O(1) on best case scenario if the input already is a string (otherwise toString() method takes O(N)) + and the first & last characters don't match, triggering an early return * Space Complexity - O(1) */