編寫**,以給定值x為基準將鍊錶分割成兩部分,所有小於x的結點排在大於或等於x的結點之前。
給定乙個鍊錶的頭指標 listnode* phead,請返回重新排列後的鍊錶的頭指標。注意:分割以後保持原來的資料順序不變。
設定兩個鍊錶,將小於x的結點放在乙個鍊錶中,大於等於x的結點放在另乙個鍊錶中,然後合併兩個鍊錶。
/*
struct listnode
};*/
class
partition
//將大於等於x的結點放在largehead鍊錶中
else
cur = cur-
>next;
}//將兩個鍊錶合併
//smallhead鍊錶最後乙個節點指向large的頭指標,即largehead
small-
>next = largehead-
>next;
//large鍊錶最後乙個節點設定為尾節點,即設定為null
large-
>next =
null
;return smallhead-
>next;}}
;
牛客網練習 鍊錶分割
編寫 以給定值x為基準將鍊錶分割成兩部分,所有小於x的結點排在大於或等於x的結點之前 給定乙個鍊錶的頭指標 listnode phead,請返回重新排列後的鍊錶的頭指標。注意 分割以後保持原來的資料順序不變。一看到這道題我就想到了建立兩個鍊錶的想法,乙個鍊錶放小於指定x的所有節點,另乙個放大於等於的...
牛客網 程式設計題 鍊錶分割
現有一鍊錶的頭指標 listnode phead,給一定值x,編寫一段 將所有小於x的結點排在其餘結點之前,且不能改變原來的資料順序,返回重新排列後的鍊錶的頭指標。解這道題目,最重要的是建立兩個鍊錶,將小於x的結構體放到乙個鍊錶lesshead,大於x的結構體放到另乙個鍊錶greaterhead。最...
牛客 鍊錶分割
編寫 以給定值x為基準將鍊錶分割成兩部分,所有小於x的結點排在大於或等於x的結點之前 給定乙個鍊錶的頭指標 listnode phead,請返回重新排列後的鍊錶的頭指標。注意 分割以後保持原來的資料順序不變。new關鍵字之後會建立例項物件,其他的複製都只是引用,比如 new a 建立a的物件 b a...