PHP實現(xiàn)合并兩個排序鏈表的方法
本文實例講述了PHP實現(xiàn)合并兩個排序鏈表的方法。分享給大家供大家參考,具體如下:
問題
輸入兩個單調(diào)遞增的鏈表,輸出兩個鏈表合成后的鏈表,當(dāng)然我們需要合成后的鏈表滿足單調(diào)不減規(guī)則。
解決思路
簡單的合并排序。由于兩個數(shù)列本來就是遞增的,所以每次將兩個數(shù)列中較小的部分拿過來就可以了。
實現(xiàn)代碼
<?php /*class ListNode{ var $val; var $next = NULL; function __construct($x){ $this->val = $x; } }*/ function Merge($pHead1, $pHead2) { if($pHead1 == NULL) return $pHead2; if($pHead2 == NULL) return $pHead1; $reHead = new ListNode(); if($pHead1->val < $pHead2->val){ $reHead = $pHead1; $pHead1 = $pHead1->next; }else{ $reHead = $pHead2; $pHead2 = $pHead2->next; } $p = $reHead; while($pHead1&&$pHead2){ if($pHead1->val <= $pHead2->val){ $p->next = $pHead1; $pHead1 = $pHead1->next; $p = $p->next; } else{ $p->next = $pHead2; $pHead2 = $pHead2->next; $p = $p->next; } } if($pHead1 != NULL){ $p->next = $pHead1; } if($pHead2 != NULL) $p->next = $pHead2; return $reHead; }
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《PHP數(shù)據(jù)結(jié)構(gòu)與算法教程》、《php程序設(shè)計算法總結(jié)》、《php字符串(string)用法總結(jié)》、《PHP數(shù)組(Array)操作技巧大全》、《PHP常用遍歷算法與技巧總結(jié)》及《PHP數(shù)學(xué)運算技巧總結(jié)》
希望本文所述對大家PHP程序設(shè)計有所幫助。
- php數(shù)組和鏈表的區(qū)別總結(jié)
- PHP實現(xiàn)鏈表的定義與反轉(zhuǎn)功能示例
- PHP雙向鏈表定義與用法示例
- php數(shù)據(jù)結(jié)構(gòu)之順序鏈表與鏈?zhǔn)骄€性表示例
- php數(shù)組指針操作詳解
- php each 返回數(shù)組中當(dāng)前的鍵值對并將數(shù)組指針向前移動一步實例
- PHP7生產(chǎn)環(huán)境隊列Beanstalkd用法詳解
- php使用redis的有序集合zset實現(xiàn)延遲隊列應(yīng)用示例
- php+redis實現(xiàn)消息隊列功能示例
- PHP如何通過帶尾指針的鏈表實現(xiàn)''隊列''
相關(guān)文章
php使用CutyCapt實現(xiàn)網(wǎng)頁截圖保存的方法
這篇文章主要介紹了php使用CutyCapt實現(xiàn)網(wǎng)頁截圖保存的方法,結(jié)合實例形式詳細分析了CutyCapt的下載、安裝及php使用CutyCapt進行截圖與保存的相關(guān)操作技巧,需要的朋友可以參考下2016-10-10php實現(xiàn)使用正則將文本中的網(wǎng)址轉(zhuǎn)換成鏈接標(biāo)簽
本文給大家分享一段php中使用正則表達式將網(wǎng)址轉(zhuǎn)換成A鏈接的函數(shù)代碼,十分簡潔實用,這里推薦給大家2014-12-12