問題描述:
向有序環形單鏈表中插入乙個新節點,得到新的環形單鏈表有序,並將頭結點指向最小值(預設當前頭結點指向最小值,環形鍊錶不降序排列)
演算法實現:
class node}
public node insertnum(node head, int num)演算法解析:node pre = head;
node cur = head.next;
while (cur != head)
pre = cur;
cur = cur.next;
}pre.next = node;
node.next = cur;
return head.value < num? head : node;
}
1.考慮鍊錶是否為空,為空時該如何處理;
2.設定臨時變數,操作鍊錶中相鄰的兩個節點元素與待插入的元素比較;
3.分析待插入的節點值比鍊錶中的所有元素都大和都小(或等於最小值)的情況。
向有序環形單鏈表中插入新節點
乙個有序的環形單鏈表,從頭節點開始公升序,同時由最後乙個結點指回頭節點,給定乙個環形鍊錶的頭節點和乙個數值num,建立乙個數值為num的新節點,將該節點插入到環形單鏈表中,要求鍊錶始終有序 這道題就是簡單的遍歷環形單鏈表,然後插入新節點,只需要考慮一些特殊情況即可 鍊錶為空 新節點成環返回 鍊錶正常...
向有序的環形單鏈表中插入新節點
向有序的環形單鏈表中插入新節點 乙個環形單鏈表從頭節點 head 開始不降序,同時由最後的節點指回頭節點。給定這樣乙個環形單鏈表的頭節點 head 和 乙個整數 num,請生成節點值為 num 的新節點,並插入到這個環形鍊錶中,保證調整後的鍊錶依然有序。輸入描述 環形單鏈表的頭節點 head 和 乙...
環形鍊錶中插入新節點
include include include include include using namespace std class list typedef struct list node typedef node link link findnode link head,int num retu...