[LeetCode]237 Delete Node in a Linked List
来源:互联网 发布:伊沃人工智能 编辑:程序博客网 时间:2024/05/16 06:40
原题链接
Question
Write a function to delete a node (except the tail) in a singly linked list, given only access to that node.
Supposed the linked list is 1 -> 2 -> 3 -> 4 and you are given the third node with value 3, the linked list should become 1 -> 2 -> 4 after calling your function.
My Answer
void deleteNode(struct ListNode* node){ if(node != NULL){ struct ListNode* temp = node->next; node->val = temp->val; node->next = temp->next; free(temp); //release the memory space }}
The complete code
#include <stdio.h>#include <stdlib.h>//definition for the singly-linked list.struct ListNode{ int val; struct ListNode *next;};void build(struct ListNode* head, int* nums, int numsSize){ struct ListNode *p, *q; p = head; for(int i=0; i<numsSize; ++i){ q = (struct ListNode*)malloc(sizeof(struct ListNode)); q->next = NULL; q->val = nums[i]; p->next = q; p = q; }}void print(const struct ListNode* head){ struct ListNode* p = head->next; while(p != NULL){ printf("%d ", p->val); p = p->next; }}void deleteNode(struct ListNode* node){ if(node != NULL){ struct ListNode* temp = node->next; node->val = temp->val; node->next = temp->next; free(temp); //release the memory space }}int main(){ struct ListNode* L = (struct ListNode*)malloc(sizeof(struct ListNode)); L->next = NULL; L->val = -1; int A[] = {1,2,3,4,5,6}; build(L, A, 6); deleteNode(L); print(L); return 0;}
0 0
- leetcode: Delete Node in a Linked List
- LeetCode Delete Node in a Linked List
- 【leetcode】Delete Node in a Linked List
- Leetcode: Delete Node in a Linked List
- [LeetCode]Delete Node in a Linked List
- 【leetcode】Delete Node in a Linked List
- Leetcode Delete Node in a Linked List
- LeetCode || Delete Node in a Linked List
- [LeetCode] Delete Node in a Linked List
- LeetCode-Delete Node in a Linked List
- 【leetCode】Delete Node In A Linked List
- [leetcode] Delete Node in a Linked List
- [LeetCode]Delete Node in a Linked List
- [leetcode]Delete Node in a Linked List
- Leetcode: Delete Node in a Linked List
- LeetCode Delete Node in a Linked List
- LeetCode-Delete Node in a Linked List
- leetcode | Delete Node in a Linked List
- C2DM简介
- undefined reference to 'pthread_create'
- Hadoop源码学习(一)
- Shell重定向&>file、2>&1、1>&2的区别
- 2015 ACM/ICPC Asia Regional Shanghai Online An easy problem(简单题)
- [LeetCode]237 Delete Node in a Linked List
- 暑假集训第三周STL L - Scavenger Hunt
- openwrt上proxy代理服务器--插入广告
- Maven(三)-依赖自己的程序
- HTML使用div和table进行布局
- 从TXT读取内容
- Linux常用命令大全
- 黑马程序员—输出函数printf和出入函数scanf
- Hive 笔记之 加载数据时,找不到文件路径异常