数组 序列 饼干day

801. 使序列递增的最小交换次数(状态机dp)

dp的本质就是图论 状态机dp就是包含多个待选状态,个人感觉就是分层图,每一层是一个状态,不同状态之间有可以相互转化的方法。通过状态和状态之间的关系,来实现状态转移。 本题f[i][j]表示只从前i项中选,f[i][0]表示第i项不进行交换,f[i][1]表示第i项进行交换,达到严格递增情况下所需要 ......
序列 次数 状态 801

day6

模板 函数模板使用泛型来定义函数,通过将类型作为函数参数传递给模板,可以使编译器生成该类型的函数,可以使用class来来创建模板 template <typename anytype> ......
day6 day

EF 多对多循环引用序列化失败 解决办法

解决办法:外键添加[JsonIgnore] 特性即可解决 /// <summary> /// 文章相册 /// </summary> [Table("ArticleAlbum")] public class ArticleAlbumModel { /// <summary> /// 主键ID /// ......
序列 办法 EF

树状数组进阶

出去集训讲了一些有关树状数组的 NB 东西,然后模拟赛考了一个二维树状数组的板子,自己差点没推出来柿子,所以简单写写。 参考博客: [《树状数组进阶》-Alex_wei](https://www.cnblogs.com/alex-wei/p/BIT_advanced.html) # 树状数组二分 树 ......
数组

[刷题记录Day21]Leetcode

# No.1 ## 题目 [二叉搜索树的最小绝对差](https://leetcode.cn/problems/minimum-absolute-difference-in-bst/) ## 思路 - 中序遍历的BST是有序序列 - 最小绝对差一定是在相邻的数组元素间 ## 代码 ```Java p ......
Leetcode Day 21

[刷题记录Day20]Leetcode二叉树

# No.1 ## 题目 [最大二叉树](https://leetcode.cn/problems/maximum-binary-tree/) ## 思路 - 递归法 - 注意保持区间定义一致`[left, right)` ## 递归分析 1. **返回值**:节点,**参数**:数组,起点,终点 ......
Leetcode Day 20

day6

结构体变量.成员名。 (*指针变量).成员名。 指针变量->成员名。 注意A选项是指针变量,C选项是结构体变量 应该是D sizeof(类)计算的是类中存在栈中的变量的大小,而类中的b和*c都是static静态变量,存在全局区中,因此不在计算范围之内,于是只剩下char a,void *p和两个vi ......
day6 day

[刷题记录Day14]Leetcode二叉树

# No.1 ## 题目 [前序遍历](https://leetcode.cn/problems/binary-tree-preorder-traversal/) ## 思路 - 递归法 ## 代码 ```Java public void Traverse(TreeNode node, List l ......
Leetcode Day 14

[刷题记录Day15]Leetcode二叉树

# No.1 ## 题目 [二叉树的层序遍历](https://leetcode.cn/problems/binary-tree-level-order-traversal/) ## 思路 - 使用队列 - 关键点:1. 每进入一层,层内的节点都被处理完成 2. 开始遍历层内的节点前,必须先记录该层 ......
Leetcode Day 15

[刷题记录Day16]Leetcode二叉树

# No.1 ## 题目 [二叉树的最大深度](https://leetcode.cn/problems/maximum-depth-of-binary-tree/) ## 思路 - 递归 - 其实是后序遍历的方式 ## 代码 ```Java public int maxDepth(TreeNode ......
Leetcode Day 16

[刷题记录Day17]Leetcode二叉树

# No.1 ## 题目 [平衡二叉树](https://leetcode.cn/problems/balanced-binary-tree/) ## 思路 - 递归法 - 在遍历中比较左右子树的高度差 ## 递归分析 1. **参数**:当前传入节点。 **返回值**:以当前传入节点为根节点的树的 ......
Leetcode Day 17

[刷题记录Day18]Leetcode二叉树

# No.1 ## 题目 [找树左下角的值](https://leetcode.cn/problems/find-bottom-left-tree-value/) ## 思路 - 队列,层序遍历 - Deque既可以用作栈也可以用作队列,谨慎使用 ## 代码 ```Java public int f ......
Leetcode Day 18

[刷题记录Day11]Leetcode

# No.1 ## 题目 [有效的括号](https://leetcode.cn/problems/valid-parentheses/) ## 思路 - 奇数个符号一定不符合 - 分析括号不匹配的可能性 - 第一种情况,字符串里左方向的括号多余了 ,所以不匹配 ![[brackets0.png]] ......
Leetcode Day 11

[刷题记录Day13]Leetcode

# No.1 ## 题目 [滑动窗口最大值](https://leetcode.cn/problems/sliding-window-maximum/) ## 思路 - 编写单调队列类 - [讲解](https://programmercarl.com/0239.%E6%BB%91%E5%8A%A8 ......
Leetcode Day 13

[刷题记录Day10]Leetcode

# No.1 ## 题目 [用栈实现队列](https://leetcode.cn/problems/implement-queue-using-stacks/) ## 思路 - 模拟 - 一个入栈一个出栈 ## 代码 ```Java class MyQueue { private Stack st ......
Leetcode Day 10

[刷题记录Day8]Leetcode

# No.1 ## 题目 [反转字符串](https://leetcode.cn/problems/reverse-string/) ## 思路 - 双指针,从头尾向中间遍历 ## 代码 ```Java public void reverseString(char[] s) { char temp; ......
Leetcode Day8 Day

[刷题记录Day9]Leetcode

>建议跳过 # No.1 ## 题目 [找出字符串中第一个匹配项的下标](https://leetcode.cn/problems/find-the-index-of-the-first-occurrence-in-a-string/) ## 思路 - KMP ## 代码 ```Java ``` # ......
Leetcode Day9 Day

一维数组java练习

1、打印下列图形 * * *** * * ***** * * * ******* * * * * ***** * * * *** * * * *图形一: public class HomeWork8_24 { public static void main(String[] args) { for ......
数组 java

[刷题记录Day7]Leetcode哈希表

# No.1 ## 题目 [四数相加 II](https://leetcode.cn/problems/4sum-ii/) ## 思路 - 很妙的办法:有四个数组A、B、C、D,用hashMap记录【A、B中数字之和】+【这些和出现的次数】,再遍历C、D中数字组合,寻找【0-C、D中数字之和】在ha ......
Leetcode Day7 Day

[刷题记录Day6]Leetcode哈希表

# No.1 ## 题目 [有效的字母异位词](https://leetcode.cn/problems/valid-anagram/) ## 思路 - 每个字符频率都相同,于是把字母表映射到长度为26的数组上 ## 代码 ```Java public boolean isAnagram(Strin ......
Leetcode Day6 Day

Prüfer 序列

用于解决**带标号**的生成树计数问题,一般用于计数问题。 ### 建立 Prüfer 序列 重复下列操作 $n-2$ 次,得到长度为 $n-2$ 的 Prüfer 序列。 1. 取出编号最小的叶子节点 $x$,将与 $x$ 相连的节点加入 Prüfer 序列中。 2. 将 $x$ 和与 $x$ 相 ......
序列 252 fer Pr

数组

1. 容器:将多个数据存储到⼀起,每个数据都称为该容器的⼀个元素 2. 数组:数组就是⽤于存储数据的固定的容器,保证多个数据的数据 类型要⼀致 3. 数组的特点: 1. 数组的长度⼀但确定不能修改 2. 创建数组时,会在内存中开辟⼀块连续的空间 3. 存取元素的速度 快,因为可以通过下标,直接定位到 ......
数组

20天 hot 100 速通计划-day17

### 动态规划 #### [70. 爬楼梯](https://leetcode.cn/problems/climbing-stairs/) 假设你正在爬楼梯。需要 `n` 阶你才能到达楼顶。 每次你可以爬 `1` 或 `2` 个台阶。你有多少种不同的方法可以爬到楼顶呢? **示例 1:** ``` ......
hot 100 day 17

12.Acwing基础课第799题-简单-最长连续不重复子序列

# 12.Acwing基础课第799题-简单-最长连续不重复子序列 ## 题目描述 给定一个长度为 n的整数序列,请找出最长的不包含重复的数的连续区间,输出它的长度。 ## 输入格式 第一行包含整数 n。 第二行包含 n个整数(均在 0∼1050∼105 范围内),表示整数序列。 ## 输出格式 共 ......
基础课 序列 基础 Acwing 799

[Prufer 序列 & 计数 & 图论] CodeForces 156D Clues

https://www.luogu.com.cn/problem/CF156D # 题意 给定一张 $n$ 个点 $m$ 条边的带标号无向图,设有 $c$ 个连通块,求添加 $c - 1$ 条边使得形成一棵树的方案数,并对 $p$ 取模。 $1 \leq n \leq 10^5, 0 \leq m ......
序列 CodeForces amp Prufer Clues

day03

线程管理 一、基本概念 1、线程是进程的执行路线,它是进程内部的控制序列,线程是进程的一部分,进程是一个资源单位,而线程是执行单位,线程是进程执行的实体,负责真正的执行 2、线程是轻量级的,没有自己的代码段、数据段、bss段、堆、环境变量、命令行参数、文件描述符、信号处理函数、当前工作目录等资源,进 ......
day 03

day02

一、函数重载 1、什么是函数重载 在同一作用域下,函数名相同,参数列表不同的函数构成重载关系 函数重载与返回值的类型、参数名无关 与作用域是否相同,以及参数列表的数量、参数类型、常属性不同等有关 2、C++如何实现函数重载的? 通过g++ -S 生成汇编代码可知,编译器会把函数的参数类型进行缩写后, ......
day 02

JavaScript 去重-对象数组中的重复对象

先showCode Array.from(new Set(myArray.map(JSON.stringify)), JSON.parse) myArray是一个对象数组,它是源数据。 map(JSON.stringify) 的作用是将每个对象转换为 JSON 字符串。JSON.stringify  ......
对象 数组 JavaScript

LuoguP7637 [BalticOI 2006 Day 1] BITWISE EXPRESSIONS

## 题目大意 给定 $N$ 对数据,每对数据包含两个整数 $A_i$ 和 $B_i$,表示这一对数据的 $v_i$ 的范围:$A_i \leq v_i \leq B_i$。又将这 $N$ 对数据分为 $P$ 组,其中 $K_i$ 表示第 $i$ 组数据中有多少对数据。 我们设第 $i$ 组数据中将 ......
EXPRESSIONS BalticOI BITWISE LuoguP 7637

8.25 Day9

75+100+35=210 rk2 # T1 直接比较 $a_{i-1}$ 和 $a_i$ 如果 $a_{i-1} a_i$限制了x的在他们的最高不同位必须是1 分位考虑,开两个桶记录,直接暴力修改即可 时间复杂度:$O(30n)$ # T2 暴搜优化 # T3 55->35 没看见有个挡$l_{m ......
8.25 Day9 Day 25