初級 鍊錶 回文鍊錶

2021-08-22 08:32:57 字數 523 閱讀 8561

題目:

請判斷乙個鍊錶是否為回文鍊錶。

示例 1:

輸入: 1->2

輸出: false

示例 2:

輸入: 1->2->2->1

輸出: true

高階:

你能否用 o(n) 時間複雜度和 o(1) 空間複雜度解決此題?

思路:

原思路:將鍊錶遍歷一遍,存入陣列,但空間複雜度為o(n)不符合要求

正確思路:用快慢陣列找出鍊錶的中間位置,並將後部分反轉,進行比較

**:

public boolean ispalindrome(listnode head) 

listnode p = reverselist(slow.next);//之前寫的反轉函式

while(p!=null)

return true;

}

初級演算法 回文鍊錶

請判斷乙個鍊錶是否為回文鍊錶。示例 1 輸入 1 2 輸出 false 示例 2 輸入 1 2 2 1 輸出 true 高階 你能否用 o n 時間複雜度和 o 1 空間複雜度解決此題?package com.linklist public class ispalindrome5 listnode ...

LeetCode初級演算法之鍊錶 回文鍊錶

請判斷乙個鍊錶是否為回文鍊錶。示例 1 輸入 1 2 輸出 false 示例 2 輸入 1 2 2 1 輸出 true 高階 你能否用 o n 時間複雜度和 o 1 空間複雜度解決此題?思路一 借助外來的空間 這個題我的初步思路是借助外來的空間,也就不是o 1 的空間複雜度,那麼這個就比較簡單了,只...

鍊錶 回文鍊錶

在leetcode上有兩個題 234.回文鍊錶 面試題 02.06.回文鍊錶 請判斷乙個鍊錶是否為回文鍊錶。示例 1 輸入 1 2 輸出 false 示例 2 輸入 1 2 2 1 輸出 true 高階 你能否用 o n 時間複雜度和 o 1 空間複雜度解決此題?遍歷一遍鍊錶得到值的陣列 判斷陣列是...