Skip to content

Commit 0fc6d74

Browse files
committed
feat(leetcode/125): Valid Palindrome (Easy)
1 parent c1aeef3 commit 0fc6d74

File tree

1 file changed

+19
-1
lines changed

1 file changed

+19
-1
lines changed

โ€Žvalid-palindrome/renovizee.java

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,29 @@ class Solution {
88
// ์‹œ๊ฐ„๋ณต์žก๋„ : O(n)
99
// ๊ณต๊ฐ„๋ณต์žก๋„ : O(n)
1010
public boolean isPalindrome(String s) {
11+
// replaceAll(...): ๋ฌธ์ž์—ด ์ „์ฒด๋ฅผ ํ•œ ๋ฒˆ ์ˆœํšŒ โ†’ O(n)
12+
// trim(): ๊ณต๋ฐฑ์„ ์–‘์ชฝ ๋์—์„œ๋งŒ ํƒ์ƒ‰ โ†’ O(n) ์ด๋ผ๊ณ  ๋ณด์ง€๋งŒ ๋ณดํ†ต ๋ฌด์‹œ ๊ฐ€๋Šฅํ•œ ์ˆ˜์ค€
13+
// toLowerCase(): ๋ชจ๋“  ๋ฌธ์ž๋ฅผ ์†Œ๋ฌธ์ž๋กœ ๋ฐ”๊ฟˆ โ†’ O(n)
14+
String cleanString = s.replaceAll("[^a-zA-Z0-9]", "").trim().toLowerCase();
15+
16+
int left = 0;
17+
int right = cleanString.length() - 1;
18+
19+
//O(n)
20+
while (left < right) {
21+
if (cleanString.charAt(left) != cleanString.charAt(right)) {
22+
return false;
23+
}
24+
left++;
25+
right--;
26+
}
27+
return true;
1128

1229
}
1330
}
1431

1532
//-------------------------------------------------------------------------------------------------------------
1633
// Java ๋ฌธ๋ฒ• ํ”ผ๋“œ๋ฐฑ
17-
//
34+
// 1) char[] ๋Œ€๋ฌธ์ž Char ๊ฐ€ ์•„๋‹ˆ๊ณ  ์†Œ์คŒใ„ด์ž
35+
// 2) ~.equals๋Š” char์—์„œ ์ œ๊ณต๋˜์ง€ ์•Š์Œ
1836
//-------------------------------------------------------------------------------------------------------------

0 commit comments

Comments
ย (0)