《劍指offer》第二十三題(鍊錶中環的入口結點)

2022-09-07 23:09:32 字數 1319 閱讀 9011

//

面試題23:鍊錶中環的入口結點

//題目:乙個鍊錶中包含環,如何找出環的入口結點?例如,在圖3.8的鍊錶中,

//環的入口結點是結點3。

#include

#include

"list.h

"listnode* meetingnode(listnode* phead)//

魯棒一:先確定有沒有環,有的話先求得環中任意乙個節點

return

nullptr;

}listnode* entrynodeofloop(listnode* phead)//

開始計算入口節點,第一步先求環的個數,第二步通過兩個前後指標計算入口節點

//先移動pnode1,次數為環中結點的數目

pnode1 =phead;

for (int i = 0; i < nodesinloop; ++i)

pnode1 = pnode1->m_pnext;

//再移動pnode1和pnode2

listnode* pnode2 =phead;

while (pnode1 != pnode2)//

二者只能相遇在入口處

return

pnode1;}//

******************** test code ********************

void test(const

char* testname, listnode* phead, listnode*entrynode)

//a list has a node, without a loop

void

test1()

//a list has a node, with a loop

void

test2()

//a list has multiple nodes, with a loop

void

test3()

//a list has multiple nodes, with a loop

void

test4()

//a list has multiple nodes, with a loop

void

test5()

//a list has multiple nodes, without a loop

void

test6()

//empty list

void

test7()

int main(int argc, char*ar**)

23 劍指offer第二十三題(python)

問題 輸入乙個整數陣列,判斷該陣列是不是某二叉搜尋樹的後序遍歷的結果。如果是則輸出yes,否則輸出no。假設輸入的陣列的任意兩個數字都互不相同。coding utf 8 class solution def verifysquenceofbst self,sequence write code he...

第二十三天

1 使用 koa 搭建伺服器 const koa require koa 路由請求 context ctx 上下文 包含req和res ctx.body hello koa2 2 如何配置 koa 路由 const koa require koa 建立路由物件 const router requir...

劍指offer第二十三題二叉搜尋樹的後序遍歷

放在前面 寫了兩天 最後寫 了!輸入乙個整數陣列,判斷該陣列是不是某二叉搜尋樹的後序遍歷的結果。如果是則輸出yes,否則輸出no。假設輸入的陣列的任意兩個數字都互不相同。package test class solution public boolean verifysquenceofbst int...