力扣 刷题记录 C++
输入[]或[1,2,3,4,····], head指向头节点
static ListNode* reverseList(ListNode* head) {
vector<int> list;
while(head!=NULL){
list.push_back(head->val);
head = head->next;
}
int size = list.size();
ListNode* res = new ListNode(list[--size]);
ListNode* tem = res;
for (size--; size >= 0; size--){
ListNode* newNode = new ListNode(list[size]);
tem->next = newNode;
tem = tem->next;
}
int k=0;
return res;
}
出现问题:
ListNode res(list[–size]) 创建的实例对象开辟的空间在栈里,最终导致了栈溢出,使用new 关键字使其在堆中开辟空间后成功解决。