Skip to content

Commit 349ed86

Browse files
committed
solve: validPalindrome
1 parent e35e22e commit 349ed86

File tree

1 file changed

+23
-0
lines changed

1 file changed

+23
-0
lines changed

โ€Žvalid-palindrome/b41-41.ts

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
function isPalindrome(s: string): boolean {
2+
3+
// ํ’€์ด 1:
4+
// lowcase ๋ณ€ํ™˜, ์ก๊ทœ์‹์œผ๋กœ ๋ฌธ์ž ์ด์™ธ ํ•„ํ„ฐ
5+
// ํ•„ํ„ฐ๋œ ๋ฌธ์ž์—ด ์ˆœํšŒํ•˜๋ฉด์„œ (i, length - i)
6+
// ์ „๋ถ€ ์ผ์น˜ํ•˜๋ฉด true ์•„๋‹ˆ๋ฉด false
7+
// ์‹œ๊ฐ„ ๋ณต์žก๋„: O(n)
8+
// ๊ณต๊ฐ„ ๋ณต์žก๋„: O(n)
9+
10+
const validPalindrome1 = () => {
11+
const sanitizedStrArr = [...s.toLowerCase().replace(/[^a-z0-9]/g, "")];
12+
13+
for(let i = 0; i < Math.floor(sanitizedStrArr.length / 2); i++) {
14+
if(sanitizedStrArr[i] !== sanitizedStrArr[(sanitizedStrArr.length - 1) - i]) {
15+
return false;
16+
}
17+
}
18+
19+
return true;
20+
}
21+
22+
return validPalindrome1();
23+
};

0 commit comments

Comments
ย (0)