请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

释放空间的问题

int main() {
int arr[] = { 1,2,3,4,5 };
int n = sizeof(arr) / sizeof(int);

ListNode* head = creatLinkedList(arr, n);
printLinkedList(head);

ListNode* head2 = Solution().reverseList(head);  //(1) 这里是申明了一个指针变量,
                                                 //并没有new一个空间?
printLinkedList(head2);

deleteLinkedList(head2); //(2)此处一定要释放吗?

return 0;

}
(2)那里,老师视频说要释放掉空间,但是上面(1)处并没有new(申请)空间,而是申明了一个指针变量而已,这也要释放空间吗?

正在回答 回答被采纳积分+3

1回答

liuyubobobo 2019-07-28 18:08:15

head2 是将 head 的链表翻转了。所以 head2 中的节点都是 head 中的节点。


(2) 的位置释放的空间本质是 ListNode* head = creatLinkedList(arr, n); 中开辟的空间。(我们没有释放head)


是否一定释放?

虽然一般上机编程的话,不释放是没问题的,但是如果是笔试或者面试,对于C++语言,最好提一嘴释放空间。


继续加油!:)

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信