PHP實現(xiàn)合并兩個排序鏈表的方法
本文實例講述了PHP實現(xiàn)合并兩個排序鏈表的方法。分享給大家供大家參考,具體如下:
問題
輸入兩個單調(diào)遞增的鏈表,輸出兩個鏈表合成后的鏈表,當然我們需要合成后的鏈表滿足單調(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; }
更多關于PHP相關內(nèi)容感興趣的讀者可查看本站專題:《PHP數(shù)據(jù)結構與算法教程》、《php程序設計算法總結》、《php字符串(string)用法總結》、《PHP數(shù)組(Array)操作技巧大全》、《PHP常用遍歷算法與技巧總結》及《PHP數(shù)學運算技巧總結》
希望本文所述對大家PHP程序設計有所幫助。
相關文章
php使用CutyCapt實現(xiàn)網(wǎng)頁截圖保存的方法
這篇文章主要介紹了php使用CutyCapt實現(xiàn)網(wǎng)頁截圖保存的方法,結合實例形式詳細分析了CutyCapt的下載、安裝及php使用CutyCapt進行截圖與保存的相關操作技巧,需要的朋友可以參考下2016-10-10php實現(xiàn)使用正則將文本中的網(wǎng)址轉(zhuǎn)換成鏈接標簽
本文給大家分享一段php中使用正則表達式將網(wǎng)址轉(zhuǎn)換成A鏈接的函數(shù)代碼,十分簡潔實用,這里推薦給大家2014-12-12