判斷鍊錶是否回文?

2021-07-09 07:22:44 字數 574 閱讀 4238

given a singly linked list, determine if it is a palindrome.

思路:兩個指標,乙個正常遞推,另乙個遞推速度為第乙個的兩倍(node.next.next),到末,分兩種情況:1.奇數個元素,最後快指標指向最後乙個元素(p2.next=null);2.偶數個數,最後快指標指向null;若為奇數個數,將慢指標再向下移動一位,將該指標作為頭節點反轉後面的鍊錶;最後對比反轉的鍊錶與頭節點開始的鍊錶

**:

/**

* definition for singly-linked list.

* public class listnode

* }*/public class solution

if(p2!=null)

p1 = reverse(p1);//反轉後半截鍊錶

while(p1 != null)

return p1 == null;

}public listnode reverse(listnode head)

return newhead;

}}

鍊錶逆序 判斷鍊錶是否回文

1.具有煉表頭的單鏈表 假設需要逆序的單鏈表為 則逆序以後的鍊錶為 過程 1 取p1指向header next p1 stu next p2保留p1 next p2 p1 next 將p1 next置為null,因為單鏈表逆序以後,當前的p1節點為尾節點 p1 next null 2 取p3保留p2...

Python判斷是否為回文鍊錶

突然發現python語法的優美和簡潔,清爽,不拖泥帶水。龜叔 guido van rossum 就說 除了不能生孩子,python真的能幹很多事。definition for singly linked list.如果位元組面試 時間複雜度o n 空間複雜度o 1 class listnode de...

如何判斷鍊錶是否是回文

回文,英文palindrome,指乙個順著讀和反過來讀都一樣的字串,比如madam 我愛我,這樣的短句在智力性 趣味性和藝術性上都頗有特色,中國歷史上還有很多有趣的回文詩。那麼,我們的第乙個問題就是 判斷乙個字串是否是回文?同時從字串頭尾開始向中間掃瞄字串,如果所有字元都一樣,那麼這個字串就是乙個回...