python劍指offer 鍊錶倒數第k個結點

2021-08-11 19:49:03 字數 680 閱讀 3925

題目:輸入乙個鍊錶,輸出該鍊錶中倒數第k個結點。

思想:利用兩個指標,第乙個指標f到達k之後,新建乙個指標sencond,遍歷最後乙個時sencond則為倒數第k個結點

# -*- coding:utf-8 -*-

# class listnode:

# def __init__(self, x):

# self.val = x

# self.next = none

class

solution:

deffindkthtotail

(self, head, k):

first = head

# sencond = head

length = 0

if k == 0:

return

while first :

first = first.next

length += 1

if length == k:

sencond = head

elif length > k:

sencond = sencond.next

if length < k:

return

return sencond

劍指offer反轉鍊錶python

輸入乙個鍊錶,反轉鍊錶後,輸出新鍊錶的表頭。定義三個指標,phead,cur,forward 反轉的時候,cur.next指向phead,然後三個指標依次向後移動,具體過程看 coding utf 8 class listnode def init self,x self.val x self.ne...

劍指offer 鍊錶

單向鍊錶的結構定義 typedef int datatype struct listnode 問題1 往鍊錶的末尾新增乙個結點 給定頭結點,往末尾插入乙個結點 void insertnode listnode head,datatype key listnode p head while p nex...

劍指offer 鍊錶

鍊錶 鍊錶是一種動態資料結構 struct listnode 往鍊錶的末尾新增乙個節點的c 程式如下 void addtotail listnode phead,int value 注意第乙個引數phead是乙個指向指標的指標。當我們往乙個空鍊錶插入乙個結點時,else pnode m pnext ...