題目
刪除鍊錶的倒數第n個節點
給定乙個鍊錶,刪除鍊錶的倒數第 n 個節點,並且返回鍊錶的頭結點。
示例:給定乙個鍊錶: 1->2->3->4->5, 和 n = 2.
當刪除了倒數第二個節點後,鍊錶變為 1->2->3->5.
思路1.首先,把鍊錶放入到列表中,然後,del()函式刪除倒數第n個節點,然後,在把列表還原成鍊錶。
2.使用計數把鍊錶長度計算出來,使用長度減n加1,使用ff等於倒數第n個元素的值,然後,進行覆蓋操作,把指標指向下下個元素。從而實現刪除倒數第n個元素。
3.使用快慢指標,遍歷鍊錶,找出倒數第n個元素,然後,進行覆蓋操作,把指標指向下下個元素。從而實現刪除倒數第n個元素。
**
# definition for singly-linked list.
# class listnode:
# def __init__(self, val=0, next=none):
# self.val = val
# self.next = next
class solution:
def removenthfromend(self, head: listnode, n: int) -> listnode:
list1=
while head:
head=head.next
del(list1[len(list1)-n])
ff = fp = listnode(0)
for i in list1:
ff.next = listnode(i)
ff =ff.next
return fp.next
整數反轉 力扣題解
題目給出乙個 32 位的有符號整數,你需要將這個整數中每位上的數字進行反轉。示例 1 輸入 123 輸出 321 示例 2 輸入 123 輸出 321 示例 3 輸入 120 輸出 21 注意 假設我們的環境只能儲存得下 32 位的有符號整數,則其數值範圍為 2 31,2 31 1 請根據這個假設,...
力扣題解 簡單難度
不定時更新 給定乙個整數陣列 nums 和乙個整數目標值 target,請你在該陣列中找出 和為目標值 的那 兩個 整數,並返回它們的陣列下標。你可以假設每種輸入只會對應乙個答案。但是,陣列中同乙個元素不能使用兩遍。你可以按任意順序返回答案。我的解答 時間複雜度為o n 2 def twosum s...
力扣題解 兩數之和
給定乙個整數陣列 nums 和乙個目標值 target,請你在該陣列中找出和為目標值的那兩個整數,並返回他們的陣列下標。你可以假設每種輸入只會對應乙個答案。但是,你不能重複利用這個陣列中同樣的元素。int result int len nums.length int i,j for i 0 i le...