力扣151周赛下

  • 题目
  • 思路与算法
  • 代码实现

题目

1. 从链表中删去总和值为零的连续节点

思路与算法

  1. 只做第三题了,第四题太耗费时间了,第三题对存在的链表进行一个判断就会发现,我们只需要去掉其中相加为0的部分即可。但是该如何实现呢,想到使用map把这个和当前链表的值对应起来,如果找到某两个节点下的和相同,则他们中间的部分的和为0,将其删除即可。见代码。

代码实现

package com.immunize.leetcode.week151;import java.util.HashMap;public class Solution3 {// 定义的链表public class ListNode {int val;ListNode next;ListNode(int x) {val = x;}}public ListNode removeZeroSumSublists(ListNode head) {ListNode dummy = new ListNode(0);dummy.next = head;HashMap<Integer, ListNode> map = new HashMap<>();// 取得sum,表示当前节点之前的所有节点的和。存入map,分别作为key和valueint sum = 0;for (ListNode d = dummy; d != null; d = d.next) {sum += d.val;map.put(sum, d);}// 将中间为0的部分删除,调用map的get方法,利用map中会覆盖相同key值所在的value的特性sum = 0;for (ListNode d = dummy; d != null; d = d.next) {sum += d.val;d.next = map.get(sum).next;}return dummy.next;}
}

20200507:力扣151周赛下相关推荐

  1. 20200504:力扣187周赛下

    力扣187周赛下 题目 思路与算法 代码实现 题目 3.绝对差不超过限制的最长连续子数组 有序矩阵中的第 k 个最小数组和 思路与算法 第三题,本题没什么特殊的东西,滑动窗口即可,注意书写即可. 第四 ...

  2. 20200505:力扣151周周赛上

    力扣151周周赛上 题目 思路与算法 代码实现 题目 查询无效交易 2.比较字符串最小字母出现频次 思路与算法 第一题直接将我们需要的这四组数据包装成一个Transaction对象,主要是注意书写问题 ...

  3. C#实现力扣双周赛算法题:以组为单位订音乐会的门票订购

    目录: 前言: 一,算法题目描述 二,基本概念理解: 三,例子引入分析 四,代码解释 (1)安排座位函数 (2)查询函数 (2)求出1到RPS内的最小下标 (3)gather函数 (4)scatter ...

  4. 20200501:力扣185周赛上

    力扣185周赛上 题目 思路与算法 代码实现 题目 重新格式化字符串 点菜展示表 思路与算法 第一题,重新格式化字符串,没什么难度,直接遍历分类字符和数字,记得统计出数目,数目多1的那一类必须先拼接, ...

  5. 第一次LeetCode周赛心得(力扣-cn周赛,使用python3)

    第一次力扣参赛:第 174 场力扣周赛 第 174 场力扣周赛赛题: https://leetcode-cn.com/circle/discuss/lEfEkb/view/OrAJAh/ 第 174 ...

  6. 数组的合并和升序排列_每日“力扣”系列10 下一个排列

    今天继续力扣数组标签的算法题,力扣第31题,难度等级为中等,题目描述如下: 题目要点概括如下: 1.输入部分为一个有顺序的数组,按照数字的前后顺序,这个数字代表着一个位数不定的数字,这里程它为原数字. ...

  7. Leetcode周赛复盘——第 71 场力扣双周赛与第 279 场力扣周赛

    双周赛: 5984. 拆分数位后四位数字的最小和 class Solution:def minimumSum(self, num: int) -> int:a, b, c, d = sorted ...

  8. 力扣151. 翻转字符串里的单词

    给你一个字符串 s ,逐个翻转字符串中的所有 单词 . 单词 是由非空格字符组成的字符串.s 中使用至少一个空格将字符串中的 单词 分隔开. 请你返回一个翻转 s 中单词顺序并用单个空格相连的字符串. ...

  9. LeetCode 第 69 场力扣双周赛

    5960. 将标题首字母大写 添加链接描述 给你一个字符串 title ,它由单个空格连接一个或多个单词组成,每个单词都只包含英文字母.请你按以下规则将每个单词的首字母 大写 : 如果单词的长度为 1 ...

最新文章

  1. ClassLoader.getSystemResourceAsStream()
  2. C语言字符串-字符串排序
  3. JBI与SCA的区别
  4. SolrCloud zookeeper节点信息
  5. CodeForces - 1200C——小模拟
  6. JDBC通过连接池链接数据库总是失败的解决办法
  7. WP黑格导航主题BlackCan 焕然一新的UI设计
  8. 【Java】Java 集合相关的博客积累
  9. 超强免解压看图片压缩包工具(Made in Korea)
  10. java win10 x64下载地址_javawin10 64位
  11. 最简单的爬虫代码 python_python爬虫最简单代码
  12. Hypermesh软件初学
  13. 百度之星程序设计大赛输出格式的注意
  14. NMAKE 详解(整理转载)
  15. 谷歌胜诉!10年Java版权案终结;京东、美团等10家平台承诺不用大数据杀熟;百度网盘海外版上传下载不限速 | EA周报
  16. linux卸载phpstudy_phpStudy Linux 面板安装教程
  17. 2G、3G无线路由器拨号连接过程
  18. 基于LSTM + keras 的诗歌生成器
  19. Could not locate call adapter for io.reactivex.Observable
  20. 如何用ChemDraw Prime 绘制任意弧线箭头

热门文章

  1. 53 岁张亚勤官宣:正式加入清华!
  2. 一文详解枚举器和迭代器!
  3. 谷歌员工中位数年薪达 170 万元,却仍买不起房!
  4. 如何一本正经地写出别人无法维护的代码?
  5. 抛弃扎克伯格!拦不住的 Facebook 离职潮
  6. 京东让员工参观看守所;华为电视面世;苹果市值重回全球第一 | 极客头条
  7. 开发者编程时应该围着“程序”转吗?
  8. 所有的 iPhone 都已经被破解了!
  9. 程序员告诉你如何用技术手段玩转冲顶大会
  10. 在浏览器上,我们的隐私都是如何被泄漏的?