基于上题代码正确的前提下,填 相应代码完善 append() , 于在双向链表尾部增加新节点,横线上应填 入 用 写( )。
void append(int data) {
Node* newNode = new Node{data, nullptr, nullptr};
if (is_empty()) {
head = tail = newNode;
} else {
_______________________
}
++size;
}
- A. 1 tail->next = newNode;
- B. 1 newNode->prev = tail; 2 tail = newNode;
- C. 1 tail = newNode; 2 newNode->prev = tail; 3 tail->next = newNode;
- D. 1 tail->next = newNode; 2 newNode->prev = tail; 3 tail = newNode;
正确答案:D