一,題目描述
編寫**,以給定值x為基準將鍊錶分割成兩部分,所有小於x的結點排在大於或等於x的結點之前
給定乙個鍊錶的頭指標 listnode* phead,請返回重新排列後的鍊錶的頭指標。注意:分割以後保持原來的資料順序不變。
二,解決思路
建立兩個新的帶傀儡節點的新鍊錶,乙個存放值大於x的節點,乙個存放值小於x的節點,最後將小鍊錶與大鍊錶鏈結起來即可
三,**實現
public listnode partition
(listnode phead,
int x)
if(phead.next == null)
listnode bighead =
newlistnode(-
1);//建立兩個新的帶傀儡節點的新鍊錶,
// 乙個存放大於x的元素的鍊錶
listnode bigtail = bighead;
// 乙個存放小於x的元素的鍊錶
listnode smallhead =
newlistnode(-
1); listnode smalltail = smallhead;
for(listnode cur = phead; cur != null; cur = cur.next)
else
}// 將兩個鍊錶收尾相接到一起
smalltail.next = bighead.next;
return smallhead.next;
}
C語言 計算給定多項式在給定點x的值
對比所用的兩種方法 doublef1 double a,int n,double x return result doublef2 double a,int n,double x return result 從函式執行所需時間入手,可借助clock函式,其在標頭檔案中 clock t clock v...
找出陣列中和為給定值的方法
這個題某次面試中面試官問到了,在leetcode上也有 題目描述 給定乙個整數陣列nums和乙個目標值target,請你在該陣列中找出和為目標值的那兩個整數,並返回他們的陣列下標。你可以假設每種輸入只會對應乙個答案。但是,你不能重複利用這個陣列中同樣的元素。示例 給定 nums 2,7,11,15 ...
專案一 刪除結點值為X的結點
問題及 檔名稱 words.cpp 作 者 尚 月 完成日期 2015年02月08日 版 本 號 v1.0 問題描述 編寫函式,刪除鍊錶中有值為x的結點。程式輸入 若干正數 以0或乙個負數結束 建立鍊錶。程式輸出 輸出刪除後的鍊錶 include using namespace std struct...