数据结构—线性结构—链表:(链表翻转)

一、题目:删除链表中等于给定值val的所有节点。

样例:给出链表 1->2->3->3->4->5->3, 和 val = 3, 你需要返回删除3之后的链表:1->2->4->5

二、分析:

需要考虑的点:

1、链表为空;

2、链表只有一个元素,如5-->null;

3、链表有多个相连的需删除的元素,如1->2->3->3->3->null,val=3;

4、链表删除指定元素后为空,如1->null,val=1;

三、代码:

/*** Definition for ListNode
*/
public class ListNode {int val;ListNode next;ListNode(int x) {val = x;next = null;}
}public class Solution {/*** @param head: a ListNode* @param val: An integer* @return: a ListNode*/public ListNode removeElements(ListNode head, int val) {if(head !=null){while(head !=null && head.val == val){head = head.next;}ListNode listNode = new ListNode(0);ListNode listNodeNext = new ListNode(0);listNode = head;while(listNode != null && listNode.next !=null){if(listNode.next.val != val){listNode = listNode.next;}else{listNodeNext = listNode.next;while(listNodeNext.next != null && listNodeNext.next.val == val){listNodeNext = listNodeNext.next;}listNode.next = listNodeNext.next;}}}return head;}
}

LintCode—删除链表中的元素(452)相关推荐

  1. Java 删除链表中的元素

    使用 clear() 方法来删除链表中的元素 完整代码 import java.util.*;public class Main {public static void main(String[] a ...

  2. python实现链表的删除_删除链表中的元素,但是只能使用一个指针

    先用使用常规方法,两个指针: golang实现: type Node struct {value intnext *Node}type Link struct {head *Nodetail *Nod ...

  3. lintcode:删除链表中指定元素

    题目 删除链表中等于给定值val的所有节点. 样例 给出链表 1->2->3->3->4->5->3, 和 val = 3, 你需要返回删除3之后的链表:1-> ...

  4. c语言删除链表中特定元素,单链表的删除某个元素的操作

    昨天我们谈了关于单链表的插入操作,今天我们就来看看与插入操作对应的删除操作. 前面了解了链表的插入,现在删除就简单了,因为是个反过程嘛.还是画个图容易理解一些. 单链表删除第i个数据结点的算法思路: ...

  5. c语言删除链表中特定元素,Leetcode203. 删除链表中的元素_C语言

    题目:https://leetcode-cn.com/problems/remove-linked-list-elements/description/ 题解: /** * Definition fo ...

  6. LeetCode19. Remove Nth Node From End of List 删除链表中的倒数第n个位置的元素

    前言 本文是LeetCode19. Remove Nth Node From End of List解法,这个题目需要删除链表中的倒数第n个位置的元素 代码 # -*- coding: utf-8 - ...

  7. 算法:删除链表中重复的元素||

    //删除链表中重复的元素方法1:利用哈希表去重,然后遍历哈希表新建节点方法2:双指针 class Solution {public ListNode deleteDuplicates(ListNode ...

  8. SDUT_2122 数据结构实验之链表七:单链表中重复元素的删除

    提交代码 数据结构实验之链表七:单链表中重复元素的删除 Time Limit: 1000MS Memory Limit: 65536KB Submit Statistic Discuss Proble ...

  9. python 删除链表中的重复元素

    | 删除链表中的重复元素 存在一个按升序排列的链表,给你这个链表的头节点 head ,请你删除所有重复的元素,使每个元素 只出现一次 . 返回同样按升序排列的结果链表. 输入:head = [1,1, ...

  10. 已知带头结点单链表中各结点的元素值为整形且递增有序,设计算法删除链表中所有大于mink且小于maxk的元素,并释放被删结点的空间。

    核心函数如下: void LinkList_clear(LinkList &L,int mink,int maxk) {node *q,*t,*p,*r;p = L->next;whil ...

最新文章

  1. JavaScript和HTML实现的简单计算机
  2. C语言-数组名真的不是指针
  3. 【前端开发系列】—— 利用选择器添加内容
  4. CV之YOLOv3:深度学习之计算机视觉神经网络Yolov3-5clessses训练自己的数据集全程记录(第二次)
  5. Codewars-Javascript训练手册:正则表达式(Regular Expressions)
  6. matlab 地埋管温度场,地埋管换热器周围土壤冻结温度场的模拟研究
  7. hp代码改成linux代码,HP Database Archiving Software远程任意代码执行漏洞
  8. php 使用webservice_PHP中如何调用webservice的实例参考
  9. WWW软件全球使用排名
  10. idea base64encoder没有jar包_老师,免费版的IDEA为啥不能使用Tomcat?
  11. 程序员一定要知道的11个实用工具网站
  12. AOS编排语言系列教程(二):初识AOS编排语言,创建你的第一个AOS模板
  13. vc通过ADO连接sql server 2000的核心代码
  14. HTML打地鼠小游戏代码
  15. Ubuntu 下安装Skype聊天工具
  16. Linux命令之last
  17. 算法学习笔记:排序算法
  18. IT行业常见英文术语汇总(一)
  19. 2020秋招笔试依图科技编程题
  20. App Thinning(为什么苹果app上传时的包比在appStore下载下来的包大很多)

热门文章

  1. 【路径规划】基于matlab GUI多种蚁群算法栅格地图路径规划【含Matlab源码 650期】
  2. 【特征提取】基于matlab语音端点检测【含Matlab源码 552期】
  3. 【图像分割】基于matlab直觉模糊C均值聚类图像分割IFCM【含Matlab源码 120期】
  4. SPSS 多重共线性问题【SPSS 039期】
  5. openai-gpt_GPT-3:大惊小怪的是什么?
  6. java 排队实现_java中的优先列队-PriorityQueue源码实现解析
  7. java akka actor性能_Akka系列(一):Akka简介与Actor模型
  8. proteus微型计算机梯形波,接口芯片dac0832的应用 三角波、梯形波两种波形.doc
  9. java 把数据写入xml_java中用jdom 如何创建xml文档/将数据写入XML中
  10. BZOJ3673/3674:可持久化并查集