List 是一個陣列,裡面的元素是 Node,每個 Node 具有 value 和 next 兩個屬性。value 是一個整數,next 是指向陣列中下一個 Node 的索引,如果沒有下一個節點,next 設為 -1。
現在定義一個函數 RemoveElementAtIndex,該函數會移除串列中某個指定的 index 元素,並保持串列的連接。假設函數在呼叫時,會提供一個有效的 head 和 index,head 是串列的起始節點索引,index 是要移除的節點索引。假設我們只能一次遍歷串列,並且不能直接修改 head 節點。請問,該函數應如何實現?
struct Node{
int value;
int next;
};
void RemoveElementAtIndex(Node list[], int head, int index) {