leetcode day9 day

[LeetCode] 1688. Count of Matches in Tournament

You are given an integer n, the number of teams in a tournament that has strange rules: If the current number of teams is even, each team gets paired ......
Tournament LeetCode Matches Count 1688

Leetcode 80. 删除有序数组中的重复项 II

被前面类似的题禁锢了思路,自己写的双指针,感觉题解很巧妙,记录一下。这个解法不用记录cnt。 通用解法 为了让解法更具有一般性,我们将原问题的「保留 2 位」修改为「保留 k 位」。 对于此类问题,我们应该进行如下考虑: 由于是保留 k 个相同数字,对于前 k 个数字,我们可以直接保留 对于后面的任 ......
数组 Leetcode 80 II

Leetcode刷题day6-哈希表.双指针.三~四数求和.

454.四数相加Ⅱ 454. 四数相加 II - 力扣(LeetCode) 给你四个整数数组 nums1、nums2、nums3 和 nums4 ,数组长度都是 n ,请你计算有多少个元组 (i, j, k, l) 能满足: 0 <= i, j, k, l < n nums1[i] + nums2[ ......
指针 Leetcode day6 day

[LeetCode Hot 100] LeetCode19. 删除链表的倒数第N个结点

题目描述 思路一:采用两次遍历 第一遍遍历先获取链表的长度length 第二次从dummy节点开始走length - n步 然后将该节点指向下下个节点 思路二:采用一次遍历 设置虚拟节点dummyHead指向head 设定双指针p和q,初始都指向虚拟节点dummyHead 移动q,直到p与q之间相隔 ......
LeetCode 结点 Hot 100 19

Day20 Java流程控制02:scanner进阶使用

Java流程控制02:scanner进阶使用 1.判断是否是整数/小数: package com.baixiaofan.scanner; import java.util.Scanner; public class Demo04 { public static void main(String[] ......
流程 scanner Java Day 20

day15 函数复习和模块基础

蒙特卡洛仿真 2023-12-05 19:28:40函数复习def func(*args,**kwargs): pass #func可以接受所有的参数*形参:接受多余的位置实参 以元组的形式存储**形参:接受多余的关键字参数 以字典的形式存储 函数对象的作用:①引用 f1=func②作为函数的返回值 ......
函数 模块 基础 day 15

[LeetCode Hot 100] LeetCode21. 合并两个有序链表

题目描述 思路:新建dummy去"穿针引线" 新建一个dummy节点去"穿针引线" 注意最后返回的是dummy.next 方法一: /** * Definition for singly-linked list. * public class ListNode { * int val; * List ......
LeetCode 两个 Hot 100 21

day09

1.今日内容介绍 今日内容: 1.字符编码(******) 2.文件处理的高级部分 (1) 文件处理的其他方法 (2) 控制文件指针移动 (3) 文件修改的两种方式 3.函数的基本使用 函数名 参数 函数体代码 函数的返回值 2.字符编码储备知识 文本编辑器读取python文件内容也经历了三个步骤 ......
day 09

day10

1.今日内容 1.函数介绍 什么是函数 为何要用 如何用函数:先定义,后调用 函数 》工厂 函数名 地址 参数 原材料 函数体代码 工厂的流水线 返回值 工厂的产品 2.函数的返回值 3.函数的参数 2.函数的基本使用 ''' 1、什么是函数 函数就是盛放代码的容器,把实现某一功能的一组代码丢到一个 ......
day 10

[LeetCode Hot 100] LeetCode234. 回文链表

题目描述 思路1:将值复制到数组中然后使用双指针 计算链表的长度 创建等长的数组 将链表中的数依次放入数组中 使用左右指针判断链表是否是回文链表 时间复杂度:O(n) 空间复杂度:O(n) 思路2:快慢指针+反转链表 用快慢指针,快指针走两步,慢指针走一步,快指针遇到终止位置时,慢指针就在链表中间位 ......
LeetCode 回文 Hot 100 234

[LeetCode Hot 100] LeetCode206. 反转链表

题目描述 思路:双指针算法 方法一: /** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode() {} * ListNode(int val) ......
LeetCode Hot 100 206

[LeetCode Hot 100] LeetCode49. 字母异位词

题目描述 思路:哈希表 对字符串排序,如果是异位词,排序后就变成一样的了。 方法一: class Solution { public List<List<String>> groupAnagrams(String[] strs) { Map<String, List<String>> map = n ......
LeetCode 字母 Hot 100 49

[LeetCode Hot 100] LeetCode141. 环形链表

题目描述 思路:快慢指针 slow指针:每次移动一个节点 fast指针:每次移动两个节点 如果链表中存在环,fast指针最终会在某一时刻追上slow指针,这是由于移动速度快的fast指针会在某个时刻绕圈并追上速度慢的slow指针 条件 fast != null && fast.next != nul ......
LeetCode 环形 Hot 100 141

JavaWeb - Day02 - JS、Vue

01. JS-介绍 什么是JavaScript? JavaScript(简称:JS) 是一门跨平台、面向对象的脚本语言。是用来控制网页行为的,它能使网页可交互。 JavaScript 和 Java 是完全不同的语言,不论是概念还是设计。但是基础语法类似。 JavaScript 在 1995 年由 B ......
JavaWeb Day Vue 02

[LeetCode] 2264. Largest 3-Same-Digit Number in String

You are given a string num representing a large integer. An integer is good if it meets the following conditions: It is a substring of num with length ......
Same-Digit LeetCode Largest Number String

CTT Day3

T1 忘了叫什么名字 对于一个排列 \(p\),定义它的权值为其有多少个子串是一个值域从 \(1\) 开始的排列。给定排列 \(p\),对于 \(1\le i\le j\le n\),定义 \(f(i,j)\) 为交换 \(p_i,p_j\) 之后排列的权值。有 \(Q\) 次询问,每次询问所有 \ ......
Day3 CTT Day

Day19 Java 流程控制01:用户交互Scanner

Java 流程控制01:用户交互Scanner Scanner对象 之前我们学的基本语法中我们并没有实现程序和人的交互, 但是Java给我们提供了这样一个工具类:Scanner类,可以通过它来获取用户的输入 基本语法: Scanner scanner = new Scanner(System.in) ......
流程 Scanner 用户 Java Day

LeetCode-Java:55.跳跃游戏

题目 给你一个非负整数数组 nums ,你最初位于数组的 第一个下标 。数组中的每个元素代表你在该位置可以跳跃的最大长度。 判断你是否能够到达最后一个下标,如果可以,返回 true ;否则,返回 false 。 示例 1: 输入:nums = [2,3,1,1,4] 输出:true 解释:可以先跳 ......
LeetCode-Java LeetCode Java 55

day11 Jenkins Pipeline语法-Jenkins基于Gitlab的授权认证 (4.3.1-4.4)

一、Jenkins Pipeline语法上 Jenkins Pipeline 语法 Jenkins 有多种方式实现交付流水线。其中,Jenkins Pipeline 是一种比较流行的方式,它提供一个DSL(Domain Specific Language的缩写,)来描述交付流水线。 官网地址:htt ......
Jenkins 语法 Pipeline Gitlab day

面试leetcode算法经典 150 题

数组、字符串 1.合并两个有序数组 给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2,另有两个整数 m 和 n ,分别表示 nums1 和 nums2 中的元素数目。 请你 合并 nums2 到 nums1 中,使合并后的数组同样按 非递减顺序 排列。 注意:最终,合并后数组不应由 ......
算法 leetcode 经典 150

Day16 内部类

1. 内部类的含义 内部类就是在一个类的内部再定义一个类。比如A类中定义了一个类B,那么 B就是A 的内部类,A是B的外部类 class A{//外部类 class B{//内部类 } } 内部类可以分为: 成员内部类 静态内部类 局部内部类 匿名内部类 默认: 如果声明内部类时不使用任何修饰符,那 ......
Day 16

Day17 异常与日志

1. 异常的概述 在编程中,我们经常遇到各种不可预见的问题,例如:文件找不到、网络连接失败、数组越界等。这些问题我们通常称之为“异常”(Exception)。 java 把异常当作对象来处理,并定义了一个基类 java.lang.Throwable作为所有异常的超类。 java.lang.Throw ......
日志 Day 17

Day11 类对象

1. 静态方法与非静态方法的区别 静态方法在定义类的时候就随着类装载到了内存中,不会自动销毁,直到关闭 jvm 非静态方法只有实例化对象的时候才会分配内存,与实例化对象共存。 public class Demo01 { //静态方法 修饰符 static public static void use ......
对象 Day 11

Day13 继承知识点综合

1.继承 java 只有单继承 关键字:extends class A{}//父类 class B extends class A{}//子类B继承了A类 2.继承权限 相较于C++ 的public,protected, private,java对不写继承的default的定义不一样: c++ de ......
知识点 知识 Day 13

Day14 多态知识点综合

1.方法重写的定义 重载(overload)是在同一个类中的具有多个相同方法名,参数列表不同(的方法(返回类型可以不同),构造方法、普通方法、抽象方法都可以重载;重写(override)是在子类继承父类的时候重写,可以用@Override检查是否是重写方法,方法重载是一个类的多态性的表现,而方法重写 ......
知识点 知识 Day 14

Day15 抽象类与接口

1.抽象类格式 关键字: abstract 1.1抽象类: abstract class 类名{} public abstract class ClassName{ int a; public abstract void fun(); } 除非该继承的子类也是抽象类,否则继承了抽象类的所有类都要重写 ......
接口 Day 15

Day12 jvm 内存模型JMM

1. jvm 内存模型 JMM 原帖链接 JMM控制 Java 线程之间的通信,决定一个线程对共享变量的写入何时对另一个线程可见。 每条线程在自己的工作内存中对共享变量(副本)进行操作,JMM再负责把这些操作同步到主内存中 JVM1.8 用Meta space(元空间)(在JVM外的本地内存中)取代 ......
模型 内存 Day jvm JMM

机试题目-day4(每日一写)

快排思想 int position(int * num,int left,int right) { int temp=num[left];//选出中值 while(left<right){ while(left<right&&num[right]>=temp)//从右开始,如果不符合指针一直向左 r ......
题目 day4 day

Day10 数组

1. 数组声明 //方法一:首选 dataType[] arrayName; //方法二:非首选,像c++ dataType arrayName[]; 2. 数组创建 2.1 动态初始化 //不初始化,大小自行决定 dataType[] array = new dataType[arraySize] ......
数组 Day 10

Day07 包机制和JavaDoc文件生成

1. 包机制 1.1 语法格式 package pkg1[.pkg2[.pkg3...]]; 注意: ​ 此句必须放在文件最开始位置 1.2 提倡的命名格式 一般利用公司的域名倒置作为包名 如 www.baidu.com 其包名就推荐命名为 com.baidu.www 1.3 引用包 import ......
机制 JavaDoc 文件 Day 07