自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【算法题】62. 不同路径(LeetCode)

很显然,当`i=0`或者`j=0`时,总路径数都是`1`先把这些情况预处理了其他情况遵循状态转移方程:`dp[i][j]=dp[i-1][j]+dp[i][j-1]`即当前位置的总数是它上方和左方总数之和

2024-10-16 15:35:56 717

原创 【算法题】55. 跳跃游戏-力扣(LeetCode)

我们要想跳到最后一格,就需要保证,我们能在某个位置时,这个位置的步数加上它的索引大于或者等于最后一个位置的索引。

2024-10-14 19:44:35 334

原创 【算法】动态规划:从斐波那契数列到背包问题

这篇文章主要讲动态规划算法,我们从斐波那契数列讲起,通过力扣中的`爬楼梯`、`零钱兑换`、`零钱兑换Ⅱ`这几道经典动态规划题,讲了动态规划的基本方法、以及`组合数dp`与`排列数dp`,并通过它们引出了动态规划中的`背包问题`。我们结合前面的示例,写出了`完全背包`和`01背包`的代码,并解释了其内部的原理 。

2024-10-13 18:13:22 2332

原创 【算法题】279. 完全平方数-力扣(LeetCode)

1. **空间优化**:由于动态规划的状态转移方程只依赖于前一行的数据,可以将二维数组优化为一维数组。2. **减少不必要的计算**:在构建完全平方数列表时,可以直接使用一个列表来存储这些数,而不需要每次计算平方。

2024-10-10 21:53:23 667

原创 【Python】正则表达式及其在Python中的应用

re.findall(pattern, string)!这个是比较常用到的一个方法

2024-09-29 22:44:46 1586

原创 【Ruby】ruby on rails两行命令搭建简单的学生管理系统

本文主要是让大家体验一下ruby on rails 开发网站的快速

2024-09-27 23:45:39 846

原创 【算法题】72. 编辑距离-力扣(LeetCode)

本题看初看题目的增、删、改,会感觉非常困难,因为我们自己在利用例子模拟的时候都比较难。但是我们不妨换个思路,利用动态规划的思想,将这个问题转换成一个个子问题,利用子问题的答案来得出最终答案。

2024-09-26 20:49:38 656

原创 【Python】Python中的进制转换操作

这些函数在一些算法竞赛中使用可以提高效率但我们在平时刷题时可以用常规方法解答以提高自身`位运算`的能力。

2024-09-25 22:19:26 1328

原创 【算法题】20. 有效的括号-力扣(LeetCode)

如何我们建立一个栈我们遍历字符串`s`,如果栈为空或者栈顶的括号与遍历到的括号相对应,那么就出栈;反之则入栈。到了遍历完之后如果栈为空,那么就是符合要求的,反之则不是

2024-09-23 22:42:08 499

原创 【算法题】63. 不同路径 II-力扣(LeetCode)-”如果起点有障碍物,那么便到不了终点“

“如果起点有障碍物,那么便到不了终点 。”

2024-09-21 23:48:46 1934

原创 【算法题】64. 最小路径和-力扣(LeetCode)

这两个要求分别蕴藏着每一步与上一步或者上一步之间的关系。而上一步与下一步有着联系,我们可以比较容易的想到这题可以用到动态规划。而动态规划的核心步骤就是找到状态转移方程,而状态转移方程就隐藏在这些要求之中

2024-09-19 20:30:12 609

原创 【算法题】300. 最长递增子序列-力扣(LeetCode)

所以就可以得出状态转移方程:*dp*[*i*]=max(*dp*[*j*])+1,其中0≤*j*

2024-09-17 23:44:52 641

原创 【算法题】46. 全排列-力扣(LeetCode)

不过这颗最容易想到的树有很多重复且多余的节点,我们需要将其剪掉。如何剪掉这些枝叶呢?我们只需要初始化一个数组,记录已经选过的数字,接下来不选已经选过的数字就行了,这就是剪枝的过程。

2024-09-16 23:50:51 592

原创 【算法题】322.零钱兑换-力扣(LeetCode)

我们以`coins = [1, 2, 5], amount = 11`为例,我们知道,硬币就`1,2,5`这三种,所以当总金额为i时的最少硬币个数的得来就有三种情况:`dp[i-1]`时再来拼凑面值`1`的硬币;`dp[i-2]`时再来拼凑面值`2`的硬币;`dp[i-5]`时再来拼凑面值`5`的硬币

2024-09-15 12:22:27 1415

原创 【neo4j】neo4j和Cypher 查询语言相关知识点

Neo4j 是一个广泛使用的图形数据库管理系统(Graph Database Management System)。它是一种NoSQL数据库,专为存储和查询图形数据而设计。Neo4j 支持图形数据模型,允许用户以节点(Nodes)和关系(Relationships)的形式存储数据,并通过属性(Properties)来丰富这些节点和关系。

2024-09-14 23:03:01 1495

原创 【算法题】139. 单词拆分-力扣(LeetCode)

比如说:`dp[4]=True`表示`s[:4]`也就是`leet`可以被字典里的单词拼接而成由于前面的字符(`s[:4]`)可以被拼接而成,所以我们只需要看后面的是否能够被拼接就行了,以此递推下去就行了

2024-09-13 21:39:11 879

原创 【算法题】77.组合-力扣(LeetCode)

那么该如何剪枝呢?这是这题的关键我们发现:这些被剪枝掉的节点都小于等于它们的父节点,换句话来说,那些被保留的节点,都大于它们的父节点所以我们只需要保留那些比它们父节点大的节点就行了

2024-09-12 19:51:13 493

原创 【算法题】22.括号生成-力扣(LeetCode)

这些组合就两种情况,一种是“(”,一种是“)”,可以很容易想到二叉树,而二叉树可以想到深度优先搜索,而这题的深度优先有要求,就是“(”后面必须要有“)”,不能是“)(”这样的形式。我们观察发现,符合条件的组合必须得满足两个条件:* 1.括号必须两两配对* 2.在选择括号进行组合时,“)”的次数始终不能大于“(”的次数,比如说

2024-09-10 23:51:03 531

原创 【算法题】13.罗马数字转整-力扣(LeetCode)

此题解并不是最好的解法,但是非常好理解

2024-09-09 21:13:04 818

原创 【Git】在JetBrains系列的IDE中使用Git(二)

这些知识的两个部分分别讲了在JetBrains系列的IDE中使用Git的本地仓库、远程仓库的push和pull。

2024-09-08 20:23:15 653

原创 【Git】在JetBrains系列的IDE中使用Git(一)

这些知识一共分为了两部分,第一部分主要讲本地仓库,第二部分会讲到远程仓库中的push 和 pull

2024-09-07 23:05:58 599

原创 【Ruby】Web框架ruby on rails初识(MVC架构初理解)

利用脚手架快速搭建一个有着CRUD功能的网站我们只需要两条命令,就可以搭建出一个简单的学生管理系统的网站

2024-09-06 23:09:25 1215

原创 【Java】springBoot初识(Web和数据库交互)

Spring Boot 内置了许多默认配置,这意味着开发者不需要编写大量的 XML 或 properties 文件来配置应用程序。Spring Boot 会自动配置许多常见的功能,如嵌入式服务器、安全、数据访问、日志记录等。

2024-09-05 13:25:13 1328

原创 【Python】python实现我的世界(Minecraft)计算器

想必mc玩家都见过红石计算器吧,非常宏大的工程,也非常的牛逼。我的红石还没有到达那种层次,所以我是造不出来那种层次的 计算器的。因为它需要将计算原理所需的结构都建造出来,而我这种小菜鸡肯定是不会的。不过,由于计算机内部已经帮我们构造好了计算的功能,我们就可以直接用计算机帮我们计算,将结果在mc中返回就好了。

2024-08-29 23:36:39 1060 1

空空如也

空空如也

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

TA关注的人

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