LeetCode---Remove Linked List Elements
2015-10-10 19:37
337 查看
题目大意:给出一个链表,和一个要移除元素,返回移除了所有元素的链表。
算法思想:
1.首先,判断表头的元素与所给元素是否相等,采用循环的方式移除所有与表头元素。
2.采用前驱指针的方法,通过遍历链表,移除链表中符合要求的元素。
代码如下:
算法思想:
1.首先,判断表头的元素与所给元素是否相等,采用循环的方式移除所有与表头元素。
2.采用前驱指针的方法,通过遍历链表,移除链表中符合要求的元素。
代码如下:
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */ class Solution { public: ListNode* removeElements(ListNode* head, int val) { if(head==NULL) return NULL; while(head->val==val){ ListNode* temp=head; if(head->next==NULL){ delete head; return NULL; } head=head->next; delete temp; } ListNode *pre=head,*cp=head->next; while(cp!=NULL){ if(cp->val==val){ pre->next=cp->next; delete cp; cp=pre->next; } else{ pre=cp; cp=cp->next; } } return head; } };
相关文章推荐
- 利用python模块paramiko在CentOS 6.3 64上搭建SFTP环境
- 链表的创建 查找 排序 插入 删除 逆序 长度 显示
- CodeForcesGym 100517B Bubble Sort
- Oracle 执行计划(Explain Plan) 说明
- 配置Spring <context:annotation-config/>的作用
- 绘制音量调节视图
- 【链表】bzoj 1150: [CTSC2007]数据备份Backup
- linux下mysql自动dump
- 拷贝PDF中文字出现英文乱码的问题
- cnn公式推导
- Linux文件管理类命令及命令别名
- js实现获取当前时间,并一直刷新
- phpstorm集成phpunit
- 集体智慧编程第四章[搜索引擎与排名]总结
- 使用Json解析Json数据
- Mongo中id介绍
- iOS学习笔记(十七)——文件操作(NSFileManager)
- Apache Maven 入门
- android、java将集合逆序排列
- 自定义函数库