自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(135)
  • 收藏
  • 关注

原创 算法系列--链表问题

递归性质单叉树不难发现这种打印方式很像二叉树中的后序遍历2. 对于链表的题目,思路往往很容易想到,只是过程可能有点复杂,

2024-07-10 21:17:12 1110

原创 算法系列--分治排序|归并排序|逆序对的求解

归并排序和快速排序的区别在于排序的时机不同,归并排序是等到分解完毕之后在进行排序,快速排序是先进行分解,再排序;更形象的说,归并排序更像二叉树的后序遍历,遍历完左右子树再打印根节点;快速排序反之合并两个有序列表。

2024-07-07 11:07:39 793

原创 算法系列--分治排序|再谈快速排序|快速排序的优化|快速选择算法

快速排序的优化版本和快速选择算法

2024-07-06 23:01:43 1294

原创 模拟算法系列|替换所有的问号|提莫攻击|种花问题|Z字形变换|兼具大小写的英文字母|删除字符使频率相同

今天带来。

2024-07-02 10:11:52 947

原创 滑动窗口算法系列|基础概念|例题讲解

今天带来。

2024-07-01 18:17:49 1311

原创 Java中String,StringBuilder,StringBuffer的区别

当然可以,我们可以通过面试问答的形式来探讨String和的区别。

2024-06-30 14:02:02 344

原创 位运算算法系列|概念讲解|例题讲解

今天带来。

2024-06-27 12:45:24 1209

原创 前缀和算法系列|概念讲解|应用场景|大量例题讲解

一维前缀和就是一个简单的dp问题链接:一维前缀和(模版题)代码:2.二维前缀和同理,二位前缀和是一个简单的二维dp问题,难点在于dp表的状态转移方程和如何使用,需要进行推导链接:二维前缀和代码:3.使用条件前缀和算法是一种高效解决数组区间求和问题的技巧。它通过预处理数组,构建一个前缀和数组,。以下是一些你必须要掌握的核心概念和步骤:前缀和数组定义:构建前缀和数组:区间和的计算:理解并构建前缀和数组:使用前缀和数组进行区间求和:优化特定问题:01.寻找数组的中间下标链接:https://

2024-06-27 09:19:00 1007

原创 贪心算法系列(二)|摆动序列最长递增子序列|买卖股票的最佳时机|买卖股票的最佳时机II

后面两种情况从宏观角度来看是存在波峰和波谷的,所有相同的点(平直部分)其实可以当作一个点,所以如果遇到。每次都假定今天卖出,那么就需要知道今天之前的最小值,这样才能获得当天的最大利润,,如果小于,就能构成一个新的,更长的递增子序列,取所有情况中的最大值。位置的元素时,我们只关心i位置之前的。,这样遍历一遍数组就能得到最大利润。即可,无需关注序列本身的组成,观察dp的思路不难发现,如果趋势是平的怎么处理。的解题思路中,当走到。所有的今天构成了每天。

2024-06-24 17:38:36 468

原创 二分查找算法系列|朴素二分查找|查找左/右端点的二分查找|例题详解

二分查找算法是时间复杂度为O(logN)的搜索算法,常用于处理在有序数组中查找元素。

2024-06-11 18:52:00 949 1

原创 数学题目系列(一)|丑数|各位和|埃氏筛|欧拉筛|位运算判断奇偶

三种算法的时间复杂度对比(数据量大)对比实验:求2-n之间所有的质数。暴力解法(无法通过所有样例)

2024-06-06 21:29:45 804

原创 贪心算法系列(一)使每组第二大的数尽可能大|拆分数位后四位|最大数

【代码】贪心算法--使每组第二大的数尽可能大。

2024-06-03 15:04:46 290 1

原创 笔试狂刷--Day13(模拟 + 贪心 + 滑动窗口)

今天带来。

2024-05-04 15:24:20 463

原创 笔试狂刷--Day12(模拟 + 链表的公共节点 + dp)

笔试狂刷Day12

2024-05-04 11:34:32 402

原创 笔试狂刷--Day11(模拟 + 贪心 + dp + api)

今天带来。

2024-05-03 19:44:34 417

原创 笔试狂刷--Day10(回文子串+贪心+dp)

今天带来。

2024-05-02 19:35:37 577

原创 笔试狂刷--Day9(模拟 + dp + 规律)

今天带来笔试狂刷--Day9。

2024-05-02 19:07:58 657

原创 算法系列--BFS解决拓扑排序

💕"请努力活下去"💕作者:Lvzi文章主要内容:算法系列–算法系列–BFS解决拓扑排序大家好,今天为大家带来的是什么是拓扑排序拓扑排序–解决有顺序的排序问题(要做事情的先后顺序)建立一个有向图来表示做事情的先后顺序如何建图–灵活使用语言提供的容器要存储的是:一个节点与其所相连的节点(边),两点构成一条线段–哈希表存储我们是根据入度是否为0来决定先后顺序的一个节点的入度就是有多少个指向该节点的边使用数组int[] in表示将所有入度为0的节点添加进队列循环队列t。

2024-05-02 17:44:59 1334

原创 笔试狂刷--Day8(多源bfs,约瑟夫环)

今天带来笔试狂刷--Day8。

2024-05-01 20:37:10 69

原创 算法系列--多源BFS问题

多源bfs最常用的一个思想就是正难则反,这个思想主要用于解决谁是起点,谁是终点的问题多源bfs问题的代码 比较固定。

2024-05-01 19:15:11 811

原创 宽度优先遍历--边权为1的最短路问题

最短路问题是图论中非常经典的一种问题,其实就是通过代码找到两点之间的最优路径(往往是距离最短),最短路问题的解法很多,比如A*算法,迪杰斯特拉算法等等,本文介绍最短路问题中最简单的一种边权为1的最短路问题所谓的边权,就是指两个地点之间的距离为1(如下图所示)很明显,实际情况的道路更加复杂,两个地点之间的距离不能全是1,所以边权为1的最短路问题是比较特殊,简单的最短路问题要记录整个过程的最短路,可以通过bfs来解决,选定一个地点,以这个地点为中心向外扩展(因为一个地点连接着很多的地点)

2024-04-28 11:18:57 740 1

原创 笔试狂刷--Day7(搜索,动态规划)

今天带来笔试狂刷--Day7。

2024-04-27 19:35:22 304 1

原创 笔试狂刷--Day6(岛屿数量+模拟)

今天带来笔试狂刷--Day6。

2024-04-25 11:04:44 451

原创 笔试狂刷--Day5(最小公倍数+最优路径)

今天带来笔试狂刷--Day5。

2024-04-25 10:49:34 304

原创 笔试狂刷--Day4(滑动窗口+贪心)

今天带来笔试狂刷--Day4。

2024-04-22 20:12:16 526

原创 笔试狂刷--Day3

今天带来笔试狂刷--Day3。

2024-04-22 11:58:27 318

原创 笔试狂刷--Day2(模拟高精度算法)

今天带来。

2024-04-21 19:17:50 529 1

原创 Java算法必备之快读

在Java中,输入通常是使用Scanner,输出使用System.out,先说输入。第二行代码就是完成上述的改进工作,将字节流转化为字符流,同时使用带有缓冲区的字符流。实现字符串裁剪,根据空格裁剪依次得到一行中所有数据。快读和快写类的用法和之前的输入输出类的用法一致。在一些算法题中,由于数据量过大,可能会出现。进行读取的,一行中可能包含多个数据,通过。快写的实现思路和快读相同。

2024-04-21 17:46:05 273

原创 笔试狂刷系列--Day1

今天开启新的章节笔试狂刷系列。

2024-04-21 17:07:26 401

原创 算法系列--递归,回溯,剪枝的综合应用(3)

💕"对相爱的人来说,对方的心意,才是最好的房子。"💕作者:Lvzi文章主要内容:算法系列–递归,回溯,剪枝的综合应用(3)大家好,今天为大家带来的是,带来几个比较经典的问题N皇后和解数独,这两道都是hard级别的题目,但是不要被吓到!请看我的分析。

2024-04-02 19:41:23 1447 2

原创 动态规划1

初始化是保证填表时不越界,初始化的根据是状态转移方程,对于本题来说,由于方程中出现了i-1,i-2,i-3,所以i不能等于0,1,2,如果等于就发生了越界,所以先进行初始化,把可能发生越界的位置初始化(本题根据题目要求直接进行初始化)填表顺序是为了保证插入状态时所需要的状态已经被计算过,比如在本题中,如果要在下标为4的地方进行插入,需要保证下标为1,2,3对应的状态已经被计算过。对于动态规划的题目来说,前两部是最重要的,找到对应的状态表示和状态转移方程是解决动态规划问题的核心。空间复杂度:O(N)

2024-03-31 16:34:26 303

原创 算法系列--递归,回溯,剪枝的综合应用(2)

【代码】递归回溯剪枝。

2024-03-31 16:33:18 690 2

原创 算法系列--递归,回溯,剪枝的综合应用(1)

💕"对相爱的人来说,对方的心意,才是最好的房子。"💕作者:Lvzi文章主要内容:算法系列–递归,回溯,剪枝的综合应用(1)大家好,今天为大家带来的是。

2024-03-31 13:24:06 1293

原创 算法系列--动态规划--特殊的状态表示--分析重复子问题

💕"轻舟已过万重山!"💕作者:Lvzi文章主要内容:算法系列–算法系列–动态规划–特殊的状态表示–分析重复子问题大家好,今天为大家带来的是。

2024-03-30 18:11:04 574

原创 算法系列--动态规划--背包问题(5)--二维费用背包问题

💕"要平安无事地活下去."💕作者:Lvzi文章主要内容:算法系列–动态规划–背包问题(5)–二维费用背包问题大家好,今天为大家带来的是。

2024-03-30 16:34:36 523

原创 算法系列--动态规划--背包问题(4)--完全背包拓展题目

💕"这种低水平质量的攻击根本就不值得我躲!"💕作者:Lvzi文章主要内容:算法系列–动态规划–背包问题(4)–完全背包拓展题目大家好,今天为大家带来的是。

2024-03-30 15:04:58 1146

原创 算法系列--动态规划--背包问题(3)--完全背包介绍

💕"Su7"💕作者:Lvzi文章主要内容:算法系列–动态规划–背包问题(3)–完全背包介绍大家好,今天为大家带来的是。

2024-03-28 21:34:21 965

原创 算法系列--动态规划--背包问题(2)--01背包拓展题目

本题的难点就在于转化,光看数字无法得出什么有效的结论,我们将数字换为字母,看能得出什么结论:最后发现整个问题的思路很像目标和那道题目(就在上面),但是目标和那道题目最终求的是一个具体数字,本题要求的是最后的值的绝对值尽可能的小,还是套用和目标和一样的分析思路,整个数组的和是sum,可以根据匹配的符号不同分为两部分a,b假设a>b,则求得就是a-b的最小值,对于数组中的每一个数都是选或不选,这就是01背包问题的特征,可以使用01背包问题的思路解决。

2024-03-28 19:52:11 675

原创 算法系列--动态规划--背包问题(1)--01背包介绍

背包问题是动态规划中经典的一类问题,经常在笔试面试中出现,是非常具有区分度的题目背包问题的种类很多,变式多,也就使得背包问题的难度一般都很高,而01背包问题属于其中最基础,可以当做思考模版的题目,下面就来讲解–01背包问题前情提示:如果你没有动态规划的基础,还是尽量不要通过背包问题入门,先去做上几十到动态规划的题目再来学习背包问题。

2024-03-27 20:18:39 1698 2

原创 算法系列--两个数组的dp问题(2)

💕"往前走"💕作者:Mylvzi文章主要内容:算法系列–两个数组的dp问题(2)大家好,今天为大家带来的是,今天的题目相较于(1)简单很多。

2024-03-27 10:56:26 338 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除