그냥 노드까서 팰린드롬인지 확인
정답
class Solution {
fun isPalindrome(head: ListNode?): Boolean {
head?:return false
val resList= mutableListOf<Int>()
var curNode:ListNode=head
while (true){
resList.add(curNode.`val`)
if (curNode.next==null){
break
}
curNode=curNode.next!!
}
return isPalindrome(resList)
}
}
fun isPalindrome(word:List<Int>):Boolean{
var leftPointer = 0
var rightPointer = word.size-1
while (leftPointer<rightPointer){
if (word[leftPointer]!=word[rightPointer]) {
return false
}
leftPointer+=1
rightPointer-=1
}
return true
}
class ListNode(var `val`: Int) {
var next: ListNode? = null
}
'알고리즘' 카테고리의 다른 글
릿코드 713. Subarray Product Less Than K 코틀린 (0) | 2024.03.27 |
---|---|
릿코드 287. Find the Duplicate Number 코틀린 (0) | 2024.03.24 |
릿코드 2485. Find the Pivot Integer 코틀린 (0) | 2024.03.13 |
릿코드 791. Custom Sort String 코틀린 (0) | 2024.03.11 |
릿코드 349. Intersection of Two Arrays 코틀린 (0) | 2024.03.10 |