SouthLeetCode-打卡24年02月第1周

SouthLeetCode-打卡24年02月第1周

// Date : 2024/02/01 ~ 2024/02/04

034.合并两个有序链表

(1) 题目描述

034#LeetCode.21.#北岸计划2024/02/01

将两个升序链表合并为一个新的 升序 链表并返回。

新链表是通过拼接给定的两个链表的所有节点组成的。

(2) 题解代码

class Solution {private ListNode mergeLists(ListNode curr, ListNode list) {while (list != null) {int curVal = list.val;curr.next = new ListNode(curVal);curr = curr.next;list = list.next;}return curr;}public ListNode mergeTwoLists(ListNode list1, ListNode list2) {ListNode dummy = new ListNode();ListNode curr = dummy;while (list1 != null && list2 != null) {boolean condition = list1.val < list2.val;int curVal = condition ? list1.val : list2.val;curr.next = new ListNode(curVal);curr = curr.next;if (condition) {list1 = list1.next;} else {list2 = list2.next;}}curr = mergeLists(curr, list1);curr = mergeLists(curr, list2);return dummy.next;}
}

035.合并K个升序链表

(1) 题目描述

035#LeetCode.23.#北岸计划2024/02/01

给你一个链表数组,每个链表都已经按升序排列。

请你将所有链表合并到一个升序链表中,返回合并后的链表。

(2) 题解代码

class Solution {public ListNode mergeKLists(ListNode[] lists) {int size = lists.length;ListNode curr;int curVal;ListNode dummy = new ListNode();List<Integer> result = new ArrayList<>();for(int i=0 ; i<size ; i++){curr = lists[i];while(curr != null){curVal = curr.val;result.add(curVal);curr = curr.next;}}Collections.sort(result);int length = result.size();ListNode resDummy = new ListNode();curr = resDummy;for(int k=0 ; k<length ; k++){curr.next = new ListNode(result.get(k));curr = curr.next;}return resDummy.next;}
}

036.链表的中间结点Ⅰ

(1) 题目描述

036#LeetCode.NULL.#北岸计划2024/02/03

给你单链表的头结点 head ,请你找出并返回链表的中间结点。

如果有两个中间结点,则返回第个中间结点。

(2) 题解代码

public class MiddleNodeFor1 implements MiddleNode {@Overridepublic ListNode middleNode(ListNode head){ListNode dummy = new ListNode();dummy.next = head;ListNode slow = dummy;ListNode fast = head;while(fast != null){slow = slow.next;fast = fast.next;fast = fast != null ? fast.next : fast;}return slow;}
}

037.链表的中间结点Ⅱ

(1) 题目描述

037#LeetCode.876.#北岸计划2024/02/03

给你单链表的头结点 head ,请你找出并返回链表的中间结点。

如果有两个中间结点,则返回第个中间结点。

(2) 题解代码

class Solution {public ListNode middleNode(ListNode head) {ListNode dummy = new ListNode();dummy.next = head;ListNode slow = dummy;ListNode fast = dummy;while(fast != null){slow = slow.next;fast = fast.next;fast = fast != null ? fast.next : fast;}return slow;}
}

038.分隔链表

(1) 题目描述

038#LeetCode.86.#北岸计划2024/02/04

给你一个链表的头节点 head 和一个特定值 x ,请你对链表进行分隔,

使得所有 小于 x 的节点都出现在 大于或等于 x 的节点之前。

你应当 保留 两个分区中每个节点的初始相对位置。

(2) 题解代码

class Solution {public ListNode partition(ListNode head, int x) {if(head == null) return null;ListNode curr = head;List<Integer> list = new ArrayList();int curVal;while(curr != null){list.add(curr.val);curr = curr.next;}List<Integer> sList = new ArrayList();for(int i=0 ; i<list.size() ; i++){curVal = list.get(i);if(curVal < x){sList.add(curVal);list.remove(i);i--;}}for(int j=0 ; j<list.size() ; j++){curVal = list.get(j);sList.add(curVal);}ListNode newHead = new ListNode(sList.get(0));curr = newHead;for(int k=1 ; k<sList.size() ; k++){curVal = sList.get(k);curr.next = new ListNode(curVal);curr = curr.next;}return newHead;}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/672544.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

momentJs推导日历组件

实现效果: 代码&#xff1a; 引入momentjs然后封装两个函数构建出基本数据结构 import moment from moment;// 某月有多少天 export const getEndDay (m) > m.daysInMonth();/*** description 获取本月空值数据* param { Date } year { } 年度* param { Number } month …

vue3 之 组合式API—computed

computed计算属性函数 计算属性基本思想和Vue2的完全一致&#xff0c;组合式API下的计算属性只是修改了写法 核心步骤&#xff1a; 导入computed函数执行函数 在回调参数中return基于响应式数据做计算的值&#xff0c;用变量接收 vue <script setup> // 1.导入compute…

【db2】报错 sqlcode=-420 自动类型转换的问题

脚本执行出现未知错误:状志编码(SOLSTATE):xxx 状志字符串:xx 未知错误:DB2 SQL Error: SQLCODE-420, SQLSTATE22018, SQLERRMCDECFLOAT, DRIVER4.18.60 mysql会自动将空值转换成0&#xff0c;而db2不做任何操作。 db2 报错 sqlcode-420 自动类型转换的问题csdn db2 报错 sql…

java中String类常用API

前言&#xff1a;在学习java的String类的时候&#xff0c;有很多的API需要了解&#xff0c;下面我将举出其中在新手学习时使用频率较大的几个API。 先大体看一下有哪几个&#xff1a;&#xff08;如图&#xff09; 目录 1.equals&#xff08;&#xff09;和 equalsIgnoreCase&…

一步步建立一个C#项目(连续读取S7-1200PLC数据)

这篇博客作为C#的基础系列,和大家分享如何一步步建立一个C#项目完成对S7-1200PLC数据的连续读取。首先创建一个窗体应用。 1、窗体应用 2、配置存储位置 3、选择框架 拖拽一个Button,可以选择视图菜单---工具箱 4、工具箱 拖拽Lable控件和TextBook控件 5、拖拽控件 接下来…

RAPTOR:树组织检索的递归抽象处理

RAPTOR: RECURSIVE ABSTRACTIVE PROCESSING FOR TREE-ORGANIZED RETRIEVAL Title&#xff1a;树组织检索的递归抽象处理 https://arxiv.org/pdf/2401.18059.pdf 摘要 检索增强语言模型可以更好的融入长尾问题&#xff0c;但是现有的方法只检索短的连续块&#xff0c;限制了整…

国密SM2算法进行数据的加密、签名和验签、解密

一、背景介绍 数据的加解密有很多种方式&#xff0c;几种常用的加密算法如下&#xff1a; DES&#xff08;Data Encryption Standard&#xff09;&#xff1a;对称算法&#xff0c;数据加密标准&#xff0c;速度较快&#xff0c;适用于加密大量数据的场合&#xff1b; 3DES&…

【C++】类和对象(3)

继续学习类和对象的最后一部分知识&#xff0c;主要有初始化列表、static成员、友元、内部类、匿名对象等。 目录 再谈构造函数 构造函数体赋值 初始化列表 explicit关键字 static成员 概念 特性 友元 友元函数 友元类 内部类 匿名对象 拷贝对象时的一些编译器优化…

Android Studio从零基础到APP上线(3)

第3章 简单控件 本章介绍App开发常见的几类简单控件的用法,主要包括:显示文字的文本视图,容纳视图的常用布局,响应点击的按钮控件,显示图片的图像视图等。然后结合本章所学的知识,演示一个实战项目“简单计算器”的设计与实现。 3.1 文本显示 本节介绍如何在文本视图Tex…

『运维备忘录』之 HTTP 响应状态码速查

运维人员不仅要熟悉操作系统、服务器、网络等只是&#xff0c;甚至对于开发相关的也要有所了解。很多运维工作者可能一时半会记不住那么多命令、代码、方法、原理或者用法等等。这里我将结合自身工作&#xff0c;持续给大家更新运维工作所需要接触到的知识点&#xff0c;希望大…

java 基础 (1)简介-程序基础-流程控制-数组操作

学习教程 java入门 JavaEE JavaSe JavaMe 简单来说&#xff0c;Java SE就是标准版&#xff0c;包含标准的JVM和标准库&#xff0c;而Java EE是企业版&#xff0c;它只是在Java SE的基础上加上了大量的API和库&#xff0c;以便方便开发Web应用、数据库、消息服务等&#xff0c;…

Day 39 | 动态规划 62.不同路径 、 63. 不同路径 II

62.不同路径 题目 文章讲解 视频讲解 思路&#xff1a;确定dp[i][j]含义&#xff1a;到达[i,j]有多少条路径&#xff1b;递推公式&#xff1a;dp[i][j]dp[i][j-1]dp[i-1][j] class Solution {public int uniquePaths(int m, int n) {int[][] dpnew int[m][n];for(int i0;i&l…

前端基础复习(后端人员看前端知识)

企业级前端项目开发中&#xff0c;需要将前端开发所需要的工具、技术、流程、经验进行规范化和标准化&#xff0c;而不是零散的html、js、css文件堆叠在一起。 首先我们需配置前端的开发基础环境NodeJS&#xff0c;相当于后端人员java开发的JDK。然后搭建前端工程脚手架Vue-cl…

降噪和音频修复 iZotope RX 7 Advanced

iZotope RX 7 Advanced 是一款功能强大的音频修复和增强软件&#xff0c;它能够帮助用户轻松应对各种音频问题&#xff0c;提供全面的工具和技术来优化和改善音频质量。 首先&#xff0c;iZotope RX 7 Advanced 具有出色的降噪功能。无论是背景噪音、杂音还是其他干扰因素&…

【VTKExamples::PolyData】第二十二期 ImplicitSelectionLoop

很高兴在雪易的CSDN遇见你 VTK技术爱好者 QQ:870202403 前言 本文分享VTK样例ImplicitSelectionLoop,并解析接口vtkImplicitSelectionLoop,希望对各位小伙伴有所帮助! 感谢各位小伙伴的点赞+关注,小易会继续努力分享,一起进步! 你的点赞就是我的动力(^U^)ノ~YO…

JVM jstat工具

jstat工具说明 用以判断JVM是否存在内存问题&#xff0c;判断JVM垃圾回收是否正常 jstat [ generalOption | outputOptions vmid [interval[s|ms] [count]] ] 参数解释&#xff1a; *Options -选项&#xff0c;我们一般使用-gcutil查看GC情况 vmid -VM的进程号&#xf…

LeetCode:14.最长公共前缀

14. 最长公共前缀 - 力扣&#xff08;LeetCode&#xff09; 目录 题目&#xff1a; 思路&#xff1a; 代码有限注释&#xff1a; 每日表情包&#xff1a; 题目&#xff1a; 思路&#xff1a; 仅有一种&#xff0c;LeetCode的四种解法&#xff0c;三种都是来水的&#…

『运维备忘录』之 TAR 命令详解

运维人员不仅要熟悉操作系统、服务器、网络等只是&#xff0c;甚至对于开发相关的也要有所了解。很多运维工作者可能一时半会记不住那么多命令、代码、方法、原理或者用法等等。这里我将结合自身工作&#xff0c;持续给大家更新运维工作所需要接触到的知识点&#xff0c;希望大…

【51单片机】外部中断和定时器中断

目录 中断系统中断介绍中断概念 中断结构及相关寄存器中断结构中断相关寄存器 外部中断实验外部中断配置软件设计实验现象 定时器中断定时器介绍51 单片机定时器原理51 单片机定时/计数器结构51 单片机定时/计数器的工作方式 定时器配置硬件设计软件设计实验现象 中断系统 本章…

Ansible command命令模块 这个模块可以直接在远程主机上执行命令,并将结果返回本主机。

目录 练习环境配置主机清单配置无密码链接ping模块 command 命令模块也可以用来安装点东西看个路径 练习环境 ansible_naster 作为主服务器 ansible_slave 1 2 作为两个客户端 配置主机清单 在/etc/ansible/hosts 文件中进行编辑 vim /etc/ansible/bosts配置无密码链接 注…