E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
随想录
代码
随想录
刷题笔记 DAY 23 | 修剪二叉搜索树 No.669 | 将有序数组转换为二叉搜索树 No.108 | 把二叉搜索树转换为累加树 No.538
将有序数组转换为二叉搜索树(No.108)2.1题目2.2笔记2.3代码03.把二叉搜索树转换为累加树(No.538)3.1题目3.2笔记3.3代码Day2301.修剪二叉搜索树(No.669)题目链接代码
随想录
题解
*Soo_Young*
·
2024-02-13 04:41
代码随想录
算法
java
代码
随想录
刷题笔记 DAY 24 | 回溯算法理论基础 | 组合问题 No. 77
文章目录Day2401.回溯算法理论基础1.1什么是回溯法?1.2为什么要使用回溯法?1.3如何理解回溯法?02.组合问题(No.77)2.1题目2.2笔记2.3代码Day2401.回溯算法理论基础1.1什么是回溯法?递归函数的下面就是回溯的逻辑(有递归就有回溯)递归函数的后面位置其实就是平时提到的后序位置也就是当前这个节点做完所有的操作返回上一个节点的时候,这时候对这个节点可以通过某些逻辑做回溯
*Soo_Young*
·
2024-02-13 04:41
代码随想录
笔记
算法
代码
随想录
day20--二叉树的应用8
LeetCode669.修剪二叉搜索树题目描述:给你二叉搜索树的根节点root,同时给定最小边界low和最大边界high。通过修剪二叉搜索树,使得所有节点的值在[low,high]中。修剪树不应该改变保留在树中的元素的相对结构(即,如果没有被移除,原有的父代子代关系都应当保留)。可以证明,存在唯一的答案。所以结果应当返回修剪好的二叉搜索树的新的根节点。注意,根节点可能会根据给定的边界发生改变。示例
诗以言志659
·
2024-02-13 03:20
算法
动态规划 | 01背包问题理论 | 代码
随想录
文章目录01背包问题画图说明代码滚动数组——一维dp数组多重背包跟随carl代码
随想录
刷题语言:python01背包问题动态规划从小问题着手,逐步解决大问题。
Begonia_cat
·
2024-02-13 03:20
算法与数据结构
动态规划
算法
代码
随想录
算法训练营day 29|第七章 回溯算法part05
代码
随想录
视频讲解:回溯算法精讲,树层去重与树枝去重|LeetCode:491.递增子序列_哔哩哔哩_bilibili这道题本身没那么难想到,但是有很多要注意点:一旦path的size大于1,就要收集.
.wsy.
·
2024-02-13 02:29
代码随想录训练营
算法
代码
随想录
算法训练营第十三天 | LeetCode 144. 二叉树的前序遍历、LeetCode 145. 二叉树的后序遍历、LeetCode 94. 二叉树的中序遍历
代码
随想录
算法训练营第十三天|LeetCode144.二叉树的前序遍历、LeetCode145.二叉树的后序遍历、LeetCode94.二叉树的中序遍历文章链接:代码
随想录
递归遍历代码
随想录
迭代遍历代码
随想录
统一迭代法视频链接
Hsu琛君珩
·
2024-02-12 18:41
算法
leetcode
职场和发展
【leetcode】动态规划——序列问题总结
本文内容参考了代码
随想录
,并进行了自己的总结。
zadarmo_
·
2024-02-12 16:57
leetcode
动态规划
算法
leetcode
【力扣】刷题备忘录-动归-96. 不同的二叉搜索树
详细讲解逻辑可以看:代码
随想录
的视频链接,我这里就不赘述了。
Branton_Zhenyuan
·
2024-02-12 10:15
力扣备忘录
算法
c++
代码
随想录
算法训练营第四十八天(动态规划篇之01背包)| 1049. 最后一块石头的重量Ⅱ,494. 目标和
根据之前的01背包理论:代码
随想录
算法训练营第四十五天(动态规划篇)|01背包-CSDN博客代码
随想录
算法训练营第四十六天(动态规划篇)|01背包(滚动数组方法)-CSDN博客可以设背包容量为石头重量总和的一半
Huiwen_Z
·
2024-02-12 07:54
代码随想录训练营
算法
动态规划
python
leetcode
代码
随想录
算法训练营第四十七天(动态规划篇)| 416. 分割等和子集
416.分割等和子集题目链接:416.分割等和子集-力扣(LeetCode)思路回溯——超时首先想到之前的回溯算法,寻找数组中加和等于sum(nums)/2的子集,但对于大数组超时了:classSolution(object):defbacktracking(self,nums,startIdx,curSum):ifcurSum>sum(nums)/2:returnifcurSum==sum(nu
Huiwen_Z
·
2024-02-12 07:24
代码随想录训练营
算法
动态规划
python
leetcode
代码
随想录
算法训练营第四十九天(动态规划篇之01背包)| 474. 一和零, 完全背包理论基础
474.一和零题目链接:https://leetcode.cn/problems/ones-and-zeroes/submissions/501607337/思路之前的背包问题中,我们对背包的限制是容量,即每个背包装的物品的重量和不超过给定容量,这道题的限制是0和1的个数,因此这个背包是二维m和n,最多可以装m个0和n个1。数组中的每个元素都是一个物体,包含若干个0和1。1.dp数组定义dp[i]
Huiwen_Z
·
2024-02-12 07:53
代码随想录训练营
算法
动态规划
leetcode
python
90后女青年
随想录
(二)
15℃~20℃空气:良多云1周末的一天,是该好好的出去happy的一天,但享受生活每个人都有不一样的定义。就像我曾经现在依然会觉得吃得饱睡得暖最好如果每个星期有这样的一天,我就会觉得特别幸福和享受。是啊我们都活在被压力被物质所包围着正因为如此我们应该知道生活的意义在于参与其中在于享受它带来的感觉有时别人感觉你看起来很忙其实主角却会觉得非常美好的一天这也是一种思维方式的不一样2有人问我:是不是每天都
萧筱068
·
2024-02-12 07:33
随想录
(12)
12月14311今天早上起床感觉非常的冷,出门看见天空漆黑的样子,天上没有一颗星星,路灯在静静的点亮一条条纵横交错的路,每一条路都通向远方,有不同的风景!这两天穿的比较厚,跑步的时候就快不起来,冬天的清晨刚刚从夜里醒来,需要很长时间才能跑起来。天气冷,连拍照都不愿意出手,热完身就开始在夜色苍茫中跑步!跑到中途的时候,腿关节有点僵硬,应该是热身没有充分,有点赶时间的心态,急着开跑了,速度一度拉了下来
扫地僧_让每一天过的都有诗意
·
2024-02-12 07:51
代码
随想录
算法训练营第28天 | 93.复原IP地址 78.子集 90.子集II
复原IP地址这道题也是分割问题。但是这道题最后求的是字符串数组,所以可以直接在原字符串上插入逗点。分割的模拟不用多说,用[startIndex,i]来模拟分割字符段。当逗点数目达到3时就可以判断递归结束。同时还要实现一个判断字段是否有效的函数。classSolution{public:vectorresult;boolisValid(strings,intstart,intend){if(star
纵使啰嗦始终关注
·
2024-02-12 03:18
算法
代码
随想录
算法训练营第二十八天 |93.复原IP地址,78.子集,90.子集II(已补充)
93.复原IP地址(已观看)1、题目链接:力扣(LeetCode)官网-全球极客挚爱的技术成长平台2、文章讲解:代码
随想录
3、题目:给定一个只包含数字的字符串,复原它并返回所有可能的IP地址格式。
菜鸟是大神
·
2024-02-12 03:46
算法
算法训练营
算法
数据结构
leetcode
代码
随想录
算法训练营第二十四天|93.复原IP地址,78.子集,90.子集II
系列文章目录代码
随想录
算法训练营第一天|数组理论基础,704.二分查找,27.移除元素代码
随想录
算法训练营第二天|977.有序数组的平方,209.长度最小的子数组,59.螺旋矩阵II代码
随想录
算法训练营第三天
丁希希哇
·
2024-02-12 01:48
力扣算法刷题
算法
python
力扣
代码
随想录
算法训练营第二十五天|491.递增子序列,46.全排列,47.全排列 II
系列文章目录代码
随想录
算法训练营第一天|数组理论基础,704.二分查找,27.移除元素代码
随想录
算法训练营第二天|977.有序数组的平方,209.长度最小的子数组,59.螺旋矩阵II代码
随想录
算法训练营第三天
丁希希哇
·
2024-02-12 01:48
力扣算法刷题
算法
面试
python
力扣
代码
随想录
算法训练营第二十九天 | 491.递增子序列、46.全排列、47.全排列 II
打卡第29天,回溯算法第二刷。今日任务491.递增子序列46.全排列47.全排列II491.递增子序列给你一个整数数组nums,找出并返回所有该数组中不同的递增子序列,递增子序列中至少有两个元素。你可以按任意顺序返回答案。数组中可能含有重复元素,如出现两个整数相等,也可以视作递增序列的一种特殊情况。题解classSolution{public:vector>res;vectorpath;voidb
jjjj的笔记本
·
2024-02-12 01:46
算法
算法
leetcode
数据结构
【代码
随想录
算法训练营】第二十九天打卡 | 491.递增子序列、46.全排列、47.全排列II
代码
随想录
算法训练营任务安排491.递增子序列思路回溯三部曲46.全排列思路回溯三部曲47.全排列II思路491.递增子序列思路回溯三部曲递归函数参数本题求子序列,很明显一个元素不能重复使用,所以需要startIndex
Clukay_
·
2024-02-12 01:46
代码随想录
算法
leetcode
代码
随想录
算法训练营第52天 | 300.最长递增子序列 + 674.最长连续递增序列 + 718.最长重复子数组
今日任务目录300.最长递增子序列-Medium674.最长连续递增序列-Easy718.最长重复子数组-Medium300.最长递增子序列-Medium题目链接:力扣-300.最长递增子序列给你一个整数数组nums,找到其中最长严格递增子序列的长度。子序列是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序。例如,[3,6,2,7]是数组[0,3,1,6,2,2,7]的子序
HY.YUE
·
2024-02-12 01:16
LeetCode
python
leetcode
动态规划
代码
随想录
算法训练营补打卡 day29| 491.递增子序列、46.全排列、47.全排列 II
目录491.递增子序列思路代码46.全排列思路代码47.全排列II思路代码491.递增子序列思路题解思路:重要的点在于,因为本身不是有序的,所以同层的去重中,需要去除跟之前相同的数字。代码classSolution{List>results=newArrayList>();Listpath=newArrayList();publicList>findSubsequences(int[]nums){
qq_42591713
·
2024-02-12 01:46
算法
java
leetcode
代码
随想录
算法训练营第29天 | 491.递增子序列 + 46.全排列 + 47.全排列 II
今日任务目录491.递增子序列-Medium46.全排列-Medium47.全排列II-Medium491.递增子序列-Medium题目链接:力扣-491.递增子序列给你一个整数数组nums,找出并返回所有该数组中不同的递增子序列,递增子序列中至少有两个元素。你可以按任意顺序返回答案。数组中可能含有重复元素,如出现两个整数相等,也可以视作递增序列的一种特殊情况。提示:使用集合在过程中减枝class
HY.YUE
·
2024-02-12 01:46
LeetCode
算法
python
leetcode
代码
随想录
算法训练营第二十九天| 491.递增子序列 46.全排列 47.全排列 II
491.递增子序列题目链接给你一个整数数组nums,找出并返回所有该数组中不同的递增子序列,递增子序列中至少有两个元素。你可以按任意顺序返回答案。数组中可能含有重复元素,如出现两个整数相等,也可以视作递增序列的一种特殊情况。思路:和上一题很像,但是这道题不能先排序再去重,并且不能使用used进行去重。1、使用哈希表进行去重,然后再判断相关的条件2、各种相关的判断条件需要从题目中读到if(path.
RuojiFW
·
2024-02-12 01:45
算法
leetcode
数据结构
代码
随想录
训练营第二十九天打卡|491.递增子序列 46.全排列 47.全排列 II
491.递增子序列上来模仿着之前子集问题的去重逻辑,结果没能通过。原因是因为之前子集II问题去重是先对数组进行排序,然后进行树层去重。而本题要求收集递增子序列,就不能先排序,之前的去重逻辑就不适用了。那针对这个问题,我们应该如何选择去重逻辑呢?1.一个最朴素也最容易想到的思路是set哈希表,针对同一树层的元素,之前用过的元素之后就不能再用。所以set哈希表每次回溯时需要进行重置,只能放在回溯函数内
孤单的大尾巴狼
·
2024-02-12 01:45
算法
数据结构
leetcode
算法
随想录
第五十一天打卡|309.最佳买卖股票时机含冷冻期, 714.买卖股票的最佳时机含手续费 ,总结
|LeetCode:309.买卖股票的最佳时机含冷冻期_哔哩哔哩_bilibili代码
随想录
思路还是用的之前的方法,就是多加了个冷冻期。
星曜366
·
2024-02-12 01:15
算法
[自我记录]
随想录
刷题第四十五天 | 300. 最长递增子序列, 674. 最长连续递增序列, 718. 最长重复子数组
代码
随想录
算法打卡第四十五天,新手自我记录一下刷题历程,仅为自我打卡使用.300.最长递增子序列classSolution{public:intlengthOfLIS(vector&nums){if(nums.size
快毕业的中狗
·
2024-02-12 01:15
刷题打卡自我记录
算法
leetcode
c++
代码
随想录
打卡第29天|491.递增子序列;46.全排列;47.全排列 II
491.递增子序列关键点1:将path加入res,结果是除开size1);关键点2:终止条件可要可不要,因为下面的循环也会终止;关键点3:continue的几个条件;3-1:nums[i]>res=newArrayListpath=newArrayList>findSubsequences(int[]nums){backStracking(nums,0);returnres;}publicvoid
m0_57084351
·
2024-02-12 01:15
leetcode
算法
算法
随想录
第五十二天打卡|300.最长递增子序列 , 674. 最长连续递增序列 , 718. 最长重复子数组
|LeetCode:300.最长递增子序列_哔哩哔哩_bilibili代码
随想录
思路我本来想的是先创建一个列表作为结果,如果比列表上的右边的值大就添加,不然就把最右边的值改为nums[i],结果思路不对
星曜366
·
2024-02-12 01:14
算法
我在代码
随想录
|写代码Day26 |回溯算法|491.递增子序列 , 46.全排列 , 47.全排列 II
:*☆学习时间:周一至周五晚上7点—晚上9点周六上午9点-上午11点周日下午3点-下午6点主题:回溯算法今日份打卡代码
随想录
-回溯算法学习内容:递增子序列全排列全排列II内容详细491.递增子序列题目考点
27dCnc
·
2024-02-12 01:14
C/C++语言刷题
数据结构与算法
算法
java
数据结构
c++
笔记
学习
算法
随想录
第五十天打卡123.买卖股票的最佳时机III , 188.买卖股票的最佳时机IV
|LeetCode:123.买卖股票最佳时机III_哔哩哔哩_bilibili代码
随想录
classSolution(object):defmaxProfit(self,prices):iflen(prices
星曜366
·
2024-02-12 01:44
算法
代码
随想录
算法训练营第13天—二叉树02 | ● *层序遍历(对应10道题) ● *226.翻转二叉树 ● 101.对称二叉树
*层序遍历(二叉树的广度优先搜索,对应10道题)102.二叉树的层序遍历(opensnewwindow)107.二叉树的层次遍历II(opensnewwindow)199.二叉树的右视图(opensnewwindow)637.二叉树的层平均值(opensnewwindow)斜体样式429.N叉树的层序遍历(opensnewwindow)515.在每个树行中找最大值(opensnewwindow)1
日拱一卒的吾
·
2024-02-12 00:02
Leetcode
代码随想录(Python)
算法
python
代码
随想录
算法训练营第10天—栈和队列02 | ● 20. 有效的括号 ● 1047. 删除字符串中的所有相邻重复项 ● 150. 逆波兰表达式求值
20.有效的括号题目链接/文章讲解/视频讲解:https://programmercarl.com/0020.%E6%9C%89%E6%95%88%E7%9A%84%E6%8B%AC%E5%8F%B7.html考点栈我的思路利用标志位记录遇到了什么字符,遇到左括号加1,右括号减1,最后判断结果是否为0这种思路解决不了先出现右括号,再出现左括号的情况(需要额外添加逻辑判断)视频讲解关键点总结使用栈结
日拱一卒的吾
·
2024-02-12 00:32
Leetcode
代码随想录(Python)
算法
python
代码
随想录
算法训练营第11天—栈与队列03 | ● *239. 滑动窗口最大值 ● 347.前 K 个高频元素 ● 总结
*239.滑动窗口最大值题目链接/文章讲解/视频讲解:https://programmercarl.com/0239.%E6%BB%91%E5%8A%A8%E7%AA%97%E5%8F%A3%E6%9C%80%E5%A4%A7%E5%80%BC.html考点单调队列我的思路不使用队列两重循环,外层为滑动窗口滑动的次数,内层为滑动窗口的宽度在内层循环中寻找窗口里的最大值,并加到结果列表中返回列表视频
日拱一卒的吾
·
2024-02-12 00:32
Leetcode
代码随想录(Python)
算法
python
代码
随想录
算法训练营第12天—二叉树01 | ● 理论基础 ● *递归遍历 ● *迭代遍历
理论基础文章讲解:https://programmercarl.com/%E4%BA%8C%E5%8F%89%E6%A0%91%E7%90%86%E8%AE%BA%E5%9F%BA%E7%A1%80.html二叉树是一种数据结构,常用于递归场景二叉树:binarytree,每个节点最多有两个子节点(分支),深度为k的二叉树最多有2k-1个节点(k从1开始)二叉树的常见类型满二叉树:即节点数达到最大
日拱一卒的吾
·
2024-02-12 00:01
Leetcode
代码随想录(Python)
算法
数据结构
python
代码
随想录
一刷总结
对于数组和链表来说,那时期的我对于刷题的套路公式以及规范化还是一个很懵懂的状态。在这个阶段的后期,我能够对刷题的整个流程有了比较清楚的认知。但是由于遗忘较多,二刷还需要补上。在进入二叉树之后,逐渐将之前积累的套路使用起来,当然也学习到了递归的新套路们,在这个期间偶尔可以自己把题解出来了,大概2天一次。回溯算法章节前期,能够将公式运用的非常熟练,甚至每天都能自己解1-2道题,给了自己很强的自信心,但
努力刷题的oyyo
·
2024-02-12 00:47
代码
随想录
算法训练营第三十七天打卡|738.单调递增的数字,714. 买卖股票的最佳时机含手续费,968.监控二叉树
代码
随想录
算法训练营第三十七天738.单调递增的数字714.买卖股票的最佳时机含手续费968.监控二叉树738.单调递增的数字代码#!
选择和努力哪一个重要
·
2024-02-11 08:22
算法
leetcode
python
代码
随想录
day16--二叉树的应用4
LeetCode513.找树左下角的值题目描述:给定一个二叉树的根节点root,请找出该二叉树的最底层最左边节点的值。假设二叉树中至少有一个节点。示例1:输入:root=[2,1,3]输出:1示例2:输入:[1,2,3,4,null,5,6,null,null,7]输出:7解题思路:·解这道题,只需要先找到最大深度的叶子节点,再找到判断其是否是位于最左边,使用递归法就可以轻松解决·也可以使用迭代法
诗以言志659
·
2024-02-11 07:57
算法
数据结构
代码
随想录
day17--二叉树的应用5
LeetCode654.最大二叉树题目描述:给定一个不重复的整数数组nums。最大二叉树可以用下面的算法从nums递归地构建:创建一个根节点,其值为nums中的最大值。递归地在最大值左边的子数组前缀上构建左子树。递归地在最大值右边的子数组后缀上构建右子树。返回nums构建的最大二叉树。示例1:输入:nums=[3,2,1,6,0,5]输出:[6,3,5,null,2,0,null,null,1]解
诗以言志659
·
2024-02-11 07:57
算法
数据结构
代码
随想录
day18--二叉树的应用6
LeetCode530.二叉搜索树的最小绝对差值题目描述:给你一个二叉搜索树的根节点root,返回树中任意两不同节点值之间的最小差值。差值是一个正数,其数值等于两值之差的绝对值。示例1:输入:root=[4,2,6,1,3]输出:1示例2:输入:root=[1,0,48,null,null,12,49]输出:1思路:·求最小绝对差值,因为二叉搜索树是一个有序的树,所以,可以使用中序遍历,再去求保存
诗以言志659
·
2024-02-11 07:57
算法
代码
随想录
day13--二叉树的应用1
LeetCode102.二叉树的层序遍历题目描述:给你二叉树的根节点root,返回其节点值的层序遍历。(即逐层地,从左到右访问所有节点)。示例1:输入:root=[3,9,20,null,null,15,7]输出:[[3],[9,20],[15,7]]示例2:输入:root=[1]输出:[[1]]示例3:输入:root=[]输出:[]解题思路:·二叉树的层序遍历,可以理解为图的广度遍历,一层一层的
诗以言志659
·
2024-02-11 07:26
算法
数据结构
代码
随想录
day15--二叉树的应用3
LeetCode110--平衡二叉树题目描述:给定一个二叉树,判断它是否是高度平衡的二叉树。本题中,一棵高度平衡二叉树定义为:一个二叉树每个节点的左右两个子树的高度差的绝对值不超过1。示例1:输入:root=[3,9,20,null,null,15,7]输出:true示例2:输入:root=[1,2,2,3,3,null,null,4,4]输出:false示例3:输入:root=[]输出:true
诗以言志659
·
2024-02-11 07:26
数据结构
算法
代码
随想录
day11--队列的应用
LeetCode239.滑动窗口最大值题目描述:给你一个整数数组nums,有一个大小为k的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的k个数字。滑动窗口每次只向右移动一位。返回滑动窗口中的最大值。示例1:输入:nums=[1,3,-1,-3,5,3,6,7],k=3输出:[3,3,5,5,6,7]解释:滑动窗口的位置最大值--------------------[13-1]
诗以言志659
·
2024-02-11 07:56
算法
数据结构
leetcode
代码
随想录
day19--二叉树的应用7
LeetCode235.二叉搜索树的最近公共祖先题目描述:给定一个二叉搜索树,找到该树中两个指定节点的最近公共祖先。百度百科中最近公共祖先的定义为:“对于有根树T的两个结点p、q,最近公共祖先表示为一个结点x,满足x是p、q的祖先且x的深度尽可能大(一个节点也可以是它自己的祖先)。”例如,给定如下二叉搜索树:root=[6,2,8,0,4,7,9,null,null,3,5]示例1:输入:root
诗以言志659
·
2024-02-11 07:55
java
开发语言
代码
随想录
刷题笔记 DAY 22 | 二叉搜索树的最近公共祖先 No.235 | 二叉搜索树中的插入操作 No.701 | 删除二叉搜索树中的节点 No.450
二叉搜索树中的插入操作(No.701)2.1题目2.2笔记2.3代码03.删除二叉搜索树中的节点(No.450)3.1题目3.2代码3.3代码Day2201.二叉搜索树的最近公共祖先(No.235)题目链接代码
随想录
题解
*Soo_Young*
·
2024-02-11 06:06
代码随想录
学习
算法
重新安排行程(困难)——代码
随想录
算法训练营Day30
题目链接:332.重新安排行程题目描述给你一份航线列表tickets,其中tickets[i]=[fromi,toi]表示飞机出发和降落的机场地点。请你对该行程进行重新规划排序。所有这些机票都属于一个从JFK(肯尼迪国际机场)出发的先生,所以该行程必须从JFK开始。如果存在多种有效的行程,请你按字典排序返回最小的行程组合。例如,行程["JFK","LGA"]与["JFK","LGB"]相比就更小,
晴雪月乔
·
2024-02-11 06:16
代码随想录算法训练营
#
LeetCode
回溯法
算法
代码随想录算法训练营
leetcode
回溯法
N 皇后(困难)——代码
随想录
算法训练营Day30
题目链接:51.N皇后题目描述按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。n皇后问题研究的是如何将n个皇后放置在n×n的棋盘上,并且使皇后彼此之间不能相互攻击。给你一个整数n,返回所有不同的n皇后问题的解决方案。每一种解法包含一个不同的n皇后问题的棋子放置方案,该方案中'Q'和'.'分别代表了皇后和空位。示例1:输入:n=4输出:[[".Q..","...Q","Q.
晴雪月乔
·
2024-02-11 06:16
代码随想录算法训练营
#
LeetCode
回溯法
算法
代码随想录算法训练营
leetcode
回溯法
子集(中等)——代码
随想录
算法训练营Day28
题目链接:78.子集题目描述给你一个整数数组nums,数组中的元素互不相同。返回该数组所有可能的子集(幂集)。解集不能包含重复的子集。你可以按任意顺序返回解集。示例1:输入:nums=[1,2,3]输出:[[],[1],[2],[1,2],[3],[1,3],[2,3],[1,2,3]]示例2:输入:nums=[0]输出:[[],[0]]提示:1<=nums.length<=10-10<=nums
晴雪月乔
·
2024-02-11 06:45
代码随想录算法训练营
#
LeetCode
回溯法
算法
代码随想录算法训练营
leetcode
回溯法
代码
随想录
算法训练营第41天 | 343.整数拆分 96.不同的二叉搜索树
整数拆分dp数组的含义:dp[i]表示将i拆分所能得到的最大乘积。递推公式:dp[i]=max(dp[i],max(j*(i-j),j*dp[i-j]))。我们对j从1开始遍历,检验不同的拆分方式能产生的最大乘积。对于拆分方式的选择,要么拆成j和i-j两个数,要么继续拆i-j(dp[i-j]),为什么不继续拆j呢?因为拆分j的情况其实在遍历的过程中已经覆盖了。也可以理解为j*(i-j)是拆分为两个
纵使啰嗦始终关注
·
2024-02-10 17:56
算法
数据结构
代码
随想录
算法训练营第43天 | 1049.最后一块石头的重量II 494.目标和 474.一和零
最后一块石头的重量II若要让剩余的石头重量最小,只需要将石头分成重量近似的两堆。因此我们将石头总重量的一半作为背包容量,希望装进来的石头能尽量将背包填满。这就转化成了分割等和子集那道题的思想。classSolution{public:intlastStoneWeightII(vector&stones){intsum=0;for(intweight:stones){sum+=weight;}int
纵使啰嗦始终关注
·
2024-02-10 17:56
算法
代码
随想录
算法训练营第39天 | 62.不同路径 63.不同路径 II
不同路径可以图论中的深度优先搜索,可以将每一次的选择抽象为二叉树的两个子节点,这样所有的路径集合就被抽象成了一棵二叉树,求的路径数目就是二叉树叶子节点的数目。树的层数为m+n-1,深搜近似遍历了树的所有节点,因此程序的时间复杂度近似于指数级,是会超时的。动态规划实现如下,其实还可以用滚动数组的方式进一步做空间优化,当前的状态只与左侧和上面的状态有关,可以只用一个一维数组表示,其自身就是上次遍历(上
纵使啰嗦始终关注
·
2024-02-10 17:26
算法
上一页
4
5
6
7
8
9
10
11
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他