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 45 动态规划 7
70.爬楼梯代码
随想录
1.思路不难看出,这道题是一个完全背包计数问题,因为是排列(131和113是两种),因此背包遍历在外循环,物品遍历在内循环。
韩纪初
·
2024-01-15 10:36
算法
Day 46 动态规划 8
139.单词拆分代码
随想录
1.思路(1)对背包问题的转化这道题可以很简单的转化为,目标字符串为背包,物品为字典内元素,优化目标为是否可以进行拆分。但是怎么进行dp数组的构建,是一个比较困难的问题。
韩纪初
·
2024-01-15 10:36
算法
数据结构
Day 44 动态规划 6
K52.完全背包代码
随想录
1.思路(1)dp数组定义以及更新模式完全背包和01背包的区别可以从展开的二维背包中看出来:01背包:dp[i][j]=max(dp[i-1][j],dp[i-1][j-weights
韩纪初
·
2024-01-15 10:36
动态规划
算法
Day3 链表初步
203.移除链表元素题目链接:力扣(LeetCode)官网-全球极客挚爱的技术成长平台解答链接:代码
随想录
解答:这道题比较基本,用链表移除元素。
韩纪初
·
2024-01-15 10:05
java
服务器
算法
Day 35 贪心算法 4
860.柠檬水找零代码
随想录
1.思路这道题其实很简单,因为可行的空间非常小。如果是5元直接收下,如果是10元,需要找5元,然后收10元。这两个都是固定的。
韩纪初
·
2024-01-15 10:05
贪心算法
算法
Day 36 贪心算法 P5
435.无重叠区间代码
随想录
1.思路这道题的思路和射箭非常像,因此可以直接利用射箭的结果。但其实复杂了,有更简单的方法。(1)射箭——左排序射箭这道题跳过的部分就是这道题需要计数的部分。
韩纪初
·
2024-01-15 10:05
贪心算法
算法
Day1 数组基础
数组理论基础1.数组的下表从0开始2.数组的地址是连续的,因此增添元素删除元素需要移动其他元素的地址3.二维数组在C++里面地址是连续的,java不是704.二分查找课程链接:代码
随想录
题目链接:力扣(
韩纪初
·
2024-01-15 10:35
算法
java
数据结构
Day 2 数组2
977.有序数组的平方题目链接:力扣(LeetCode)官网-全球极客挚爱的技术成长平台解答链接:代码
随想录
思路:这道题的思路是计算每个位置,然后把之前的快速排序。
韩纪初
·
2024-01-15 10:35
算法
数据结构
leetcode
Day 37 贪心算法 6
738.单调递增的数字代码
随想录
1.思路从后向前判断,如果不呈现单调递增的状态,后一位变成9,前一位-1。这里局部最优是每两位的最优解,从后向前线性遍历能得到全局最优。但是有一点没有想清楚。
韩纪初
·
2024-01-15 10:02
贪心算法
算法
代码
随想录
刷题笔记9——贪心算法
贪心算法理论基础贪心的本质是选择每一阶段的局部最优,从而达到全局最优。这一类的题目也没什么固定套路,理论上的求解过程如下:贪心算法一般分为如下四步:将问题分解为若干个子问题找出适合的贪心策略求解每一个子问题的最优解将局部最优解堆叠成全局最优解做题的时候,一般就是想想看本题的局部最优是怎么求解的,解出来看看是否满足全局最优,举几个例子如果都不是反例,那就可以用贪心算法做出来了。分发饼干例题455(简
努力自学的小夏
·
2024-01-15 09:26
leetcode刷题
笔记
贪心算法
算法
力扣java刷题学习(代码
随想录
学习)2
刷题目录二叉树404.左叶子之和513.找树左下角的值112.路径总和113.路径总和ii106.从中序与后序遍历序列构造二叉树105.从前序与中序遍历序列构造二叉树654.最大二叉树617.合并二叉树700.二叉搜索树中的搜索98.验证二叉搜索树530.二叉搜索树的最小绝对差501.二叉搜索树中的众数236.二叉树的最近公共祖先235.二叉搜索树的最近公共祖先701.二叉搜索树中的插入操作450
Nightmarel
·
2024-01-15 09:53
学习
代码
随想录
-56-113. 路径总和 II
目录前言题目1.递归+回溯(考虑有无返回值)变量2.本题思路分析:3.算法实现4.算法复杂度5.算法坑点前言在本科毕设结束后,我开始刷卡哥的“代码
随想录
”,每天一节。
请叫我Oscar
·
2024-01-15 09:23
算法刷题-代码随想录
leetcode
代码
随想录
-刷题第五十五天
72.编辑距离题目链接:72.编辑距离思路:本题是用动规来解决的经典题目,这道题目看上去好像很复杂,但用动规可以很巧妙地算出最少编辑距离。动态规划五步曲分析:dp[i][j]表示以下标i-1为结尾的字符串word1,和以下标j-1为结尾的字符串word2,最近编辑距离为dp[i][j]。递推公式:分情况讨论if(word1[i-1]==word2[j-1]),那么说明不用任何编辑,即dp[i][j
涛声依旧9087
·
2024-01-15 09:20
数据结构
算法
数据结构
java
leetcode
动态规划
代码
随想录
-刷题第五十七天
42.接雨水题目链接:42.接雨水思路:本题十分经典,使用单调栈需要理解的几个问题:首先单调栈是按照行方向来计算雨水,如图:使用单调栈内元素的顺序从大到小还是从小到大呢?从栈头(元素从栈头弹出)到栈底的顺序应该是从小到大的顺序。因为一旦发现添加的柱子高度大于栈头元素了,此时就出现凹槽了,栈头元素就是凹槽底部的柱子,栈头第二个元素就是凹槽左边的柱子,而添加的元素就是凹槽右边的柱子。如图:关于单调栈的
涛声依旧9087
·
2024-01-15 09:20
数据结构
数据结构
算法
java
leetcode
单调栈
代码
随想录
-刷题第五十四天
392.判断子序列题目链接:392.判断子序列思路:只需要计算删除的情况,不用考虑增加和替换的情况。动态规划五步曲:dp[i][j]表示以下标i-1为结尾的字符串s,和以下标j-1为结尾的字符串t,相同子序列的长度为dp[i][j]。注意这里是判断s是否为t的子序列。即t的长度是大于等于s的。递推公式:分为当前字符相同和当前字符不同两种情况。①if(s[i-1]==t[j-1]),那么dp[i][
涛声依旧9087
·
2024-01-15 09:49
数据结构
数据结构
算法
java
leetcode
动态规划
【代码
随想录
】刷题Day36
1.无重叠区间435.无重叠区间先从小到大排序,其实本题依然是求出共同区域,只不过题目需要我们删除尽量少的区间。所以我们需要删除的一定是范围跨度大的并且跟其他有公共区间的区域。所以每次更新右边范围都需要考虑最小的范围。1.if(intervals[i][0]end)?end:intervals[i][1];2.if(intervals[i][0]>=end),说明是不同的区间,那么我们更新右边范围
哈里沃克
·
2024-01-15 09:18
刷题
leetcode
算法
职场和发展
贪心算法
c++
代码
随想录
刷题题Day15
113.路径总和ii●106.从中序与后序遍历序列构造二叉树105.从前序与中序遍历序列构造二叉树1找树左下角的值本题要找出树的最后一行最左边的值思路1:层序遍历思路2:递归迭代法层序遍历模板参考代码
随想录
刷题题
Big David
·
2024-01-15 09:15
代码随想录刷题
算法
c++
数据结构
代码随想录
二叉树
代码
随想录
刷题第31天
代码
随想录
刷题第31天分发饼干/**@lcapp=leetcode.cnid=455lang=cpp**[455]分发饼干**https://leetcode.cn/problems/assign-cookies
气氛组阿宇
·
2024-01-15 09:45
leetcode
算法
贪心算法
代码
随想录
刷题第35天
代码
随想录
刷题第35天无重叠区间/**@lcapp=leetcode.cnid=435lang=cpp**[435]无重叠区间**https://leetcode.cn/problems/non-overlapping-intervals
气氛组阿宇
·
2024-01-15 09:45
leetcode
算法
c++
代码
随想录
-刷题第五十六天
单调栈理论基础先介绍单调栈类型的题目,通常是一维数组,要寻找任一个元素的右边或者左边第一个比自己大或者小的元素的位置,此时就要想到可以用单调栈。时间复杂度为O(n)。单调栈的本质是空间换时间,因为在遍历的过程中需要用一个栈来记录右边第一个比当前元素高的元素,优点是只需要遍历一次。分析单调栈的时候,我们需要考虑以下几点。①单调栈里存放的元素是什么?单调栈里只需要存放元素的下标i就可以了,如果需要使用
涛声依旧9087
·
2024-01-15 08:13
数据结构
算法
数据结构
java
leetcode
单调栈
在
软件工程
实践中,决定是否使用显式的 else 分支取决于几个因素,包括代码的清晰度、可维护性以及个人或团队的编码风格。
文章目录潜在的优点代码用例潜在的优点在
软件工程
实践中,决定是否使用显式的else分支取决于几个因素,包括代码的清晰度、可维护性以及个人或团队的编码风格。
小秋SLAM入门实战
·
2024-01-15 07:15
C++
c++
软件工程
:黑盒测试等价分类法相关知识和多实例分析
目录一、黑盒测试和等价分类法1.黑盒测试2.等价分类法二、黑盒测试等价分类法实例分析1.工厂招工年龄测试2.规定电话号码测试3.八位微机测试4.三角形判断测试一、黑盒测试和等价分类法1.黑盒测试黑盒测试就是根据被测试程序功能来进行测试,所以也称为功能测试。黑盒测试是以用户的角度,从输入数据与输出数据的对应关系出发进行测试的。很明显,如果外部特性本身设计有问题或规格说明的规定有误,用黑盒测试方法是发
STRANGEX-03
·
2024-01-15 06:48
软件工程
软件工程
代码
随想录
day27 回溯继续深造,新题型
39.组合总和题目给定一个无重复元素的数组candidates和一个目标数target,找出candidates中所有可以使数字和为target的组合。candidates中的数字可以无限制重复被选取。说明:所有数字(包括target)都是正整数。解集不能包含重复的组合。示例1:输入:candidates=[2,3,6,7],target=7,所求解集为:[[7],[2,2,3]思考这题其实和组合
nahiyil
·
2024-01-15 05:55
算法
模拟退火算法
代码
随想录
day28 回溯算法逐渐摸到点套路
93.复原IP地址题目给定一个只包含数字的字符串,复原它并返回所有可能的IP地址格式。有效的IP地址正好由四个整数(每个整数位于0到255之间组成,且不能含有前导0),整数之间用'.'分隔。例如:"0.1.2.201"和"192.168.1.1"是有效的IP地址,但是"0.011.255.245"、"192.168.1.312"和"
[email protected]
"是无效的IP地址。示例1:输入:s="25
nahiyil
·
2024-01-15 05:55
算法
数据结构
leetcode
代码
随想录
day29 回溯开始进入排列问题
491.递增子序列题目给定一个整型数组,你的任务是找到所有该数组的递增子序列,递增子序列的长度至少是2。示例:输入:[4,6,7,7]输出:[[4,6],[4,7],[4,6,7],[4,6,7,7],[6,7],[6,7,7],[7,7],[4,7,7]]思考这题初看想用子集的方法来做,但是发现存在一个问题,怎么能判断单调递增呢,这里通过一个判断条件,如果遍历的nums[i]大于path.bac
nahiyil
·
2024-01-15 05:55
算法
模拟退火算法
代码
随想录
day30 回溯算法最终章
51.N皇后题目n皇后问题研究的是如何将n个皇后放置在n×n的棋盘上,并且使皇后彼此之间不能相互攻击。给你一个整数n,返回所有不同的n皇后问题的解决方案。每一种解法包含一个不同的n皇后问题的棋子放置方案,该方案中'Q'和'.'分别代表了皇后和空位。示例1:输入:n=4输出:[[".Q..","...Q","Q...","..Q."],["..Q.","Q...","...Q",".Q.."]]解释
nahiyil
·
2024-01-15 05:53
算法
模拟退火算法
代码
随想录
刷题题Day33
刷题的第三十三天,希望自己能够不断坚持下去,迎来蜕变。刷题语言:C++Day33任务●139.单词拆分●关于多重背包,你该了解这些!●背包问题总结篇!1单词拆分139.单词拆分思路:动态规划法(1)确定dp数组以及下标的含义dp[i]:字符串长度为i的话,dp[i]为true,表示可以拆分为一个或多个在字典中出现的单词(2)递推公式如果确定dp[j]是true,且[j,i]这个区间的子串出现在字典
Big David
·
2024-01-15 05:47
代码随想录刷题
代码随想录
C++
动态规划
多重背包
勿将欲望当梦想
她是全国道德模范,武汉
软件工程
职业学院教师,轮椅上的天使志愿者,中国最美的志愿者,北京奥运会火炬手,伦敦奥运会火炬手,北京残奥会形象大使,武汉城市精神代言人。
凡思澄_FansCheng
·
2024-01-15 05:01
软件工程
实践第二次作业——个人实战
文章目录Gitcode项目地址PSP表格解题思路描述如何解析json文件?如何获取DTO(数据传输对象)?即数据源如何选择?如何进行优化?如何实现缓存机制?如何解决缓存带来的GC性能问题?接口设计和实现过程接口和抽象类的设计类图关键代码展示初始化启动参数数据源抽象类解析命令逻辑Lib类的单例模式实现线程类命令解析性能改进使用多线程提高性能使用本地数据源提高性能使用缓存提高性能优化GC性能分析最终的
EncounterMe
·
2024-01-15 04:20
java
个人开发
代码
随想录
算法训练营第三十二天|122.买卖股票的最佳时机II、55. 跳跃游戏、45.跳跃游戏II
题目:122.买卖股票的最佳时机II文章链接:代码
随想录
视频链接:LeetCode:122.买卖股票的最佳时机||题目链接:力扣题目链接图释:classSolution{public:intmaxProfit
一楼二栋
·
2024-01-15 03:00
算法
c++
leetcode
visio 2013安装失败正在回滚
参考链接链接今次
软件工程
老师让下载visio2013,本来已经安装好了的,也画了几张图,但是手贱把visio卸载了一下,结果就是再次安装的时候老是安装失败,显示安装失败,正在回滚,然后报错1935.前前后后搞了一个多小时
饼子会飞
·
2024-01-15 02:44
visio
代码
随想录
Leetcode160. 相交链表
题目:代码(首刷看解析2024年1月13日):classSolution{public:ListNode*getIntersectionNode(ListNode*headA,ListNode*headB){ListNode*A=headA,*B=headB;while(A!=B){A=A!=nullptr?A->next:headB;B=B!=nullptr?B->next:headA;}ret
meeiuliuus
·
2024-01-15 01:34
#
leetcode
---
easy
c++
算法
链表
代码
随想录
第第五十七天—回文子串,最长回文子序列
leetcode647.回文子串题目链接:回文子串版本一:动态规划dp数组及下标的含义dp[i][j]:区间范围[i,j](左闭右闭)的子串是否是回文子串,如果是dp[i][j]为true,否则为false。确定递推公式(1)当s[i]与s[j]不相等时,dp[i][j]=false(2)当s[i]与s[j]相等时,有如下三种情况:情况一:下标i与j相同,同一个字符,是回文子串情况二:下标i与j相
荒野饮冰室
·
2024-01-15 00:08
动态规划
数据结构
算法
代码
随想录
第第五十九天——下一个更大元素||,接雨水
leetcode503.下一个更大元素||题目链接:下一个更大元素||版本一:classSolution{public:vectornextGreaterElements(vector&nums){vectorres(nums.size(),-1);if(nums.size()==0)returnres;stackst;st.push(0);for(inti=1;inums[st.top()]){
荒野饮冰室
·
2024-01-15 00:38
算法
数据结构
单调栈
代码
随想录
第五十六天——两个字符串的删除操作,编辑距离
leetcode583.两个字符串的删除操作题目链接:两个字符串的删除操作两个字符串可以相互删除版本一:确定dp数组及下标的含义dp[i][j]:以i-1为结尾的字符串word1,和以j-1为结尾的字符串word2,想要达到相等,所需要删除元素的最少次数确定递推公式(1)当word1[i-1]与word2[j-1]相同:dp[i][j]=dp[i-1][j-1](2)当word1[i-1]与wor
荒野饮冰室
·
2024-01-15 00:08
动态规划
数据结构
算法
版本控制及代码托管平台综述
此外,版本控制也是一种
软件工程
技巧,借此能在软件开发的过程中,确保由不同人所编辑的同一程序文件都得到同步。
frytea
·
2024-01-14 23:17
SpringMVC
一.SpringMVC定义MVC是ModelViewController的缩写,它是
软件工程
中的一种软件架构模式,它把软件系统分为模型、试图和控制器三个基本部分。
秃头的赌徒
·
2024-01-14 23:20
spring
java
后端
mvc
spring
boot
加班后遗症
作为一名互联网公司的
软件工程
师,每当我攻克不了当下的技术难题的时候,就会离开工位,在狭窄的茶水间,离开所有的电子设备的屏幕,安静地一个人待一会。我清楚,在工位上发呆是不合时宜的。
乐一_d7c7
·
2024-01-14 22:53
计算机常用工具软件第5版,计算机常用工具软件(第3版)
计算机常用工具软件(第3版)出版时间:2011年11月定价:25.00ISBN:9787121148163所属分类:计算机•网络 计算机•网络>
软件工程
及软件方法学 大中专教材>中职教材
韦思嘉
·
2024-01-14 17:02
计算机常用工具软件第5版
复杂适应系统(CAS)和敏捷团队
与传统的
软件工程
实践相比,敏捷方法论被认为是开发软件产品和系统的另一种替代过程。注重强调并将人和团队因素融入软件开发过程中,构成了敏捷开发的核心部分。
保真
·
2024-01-14 17:58
代码
随想录
训练营Day43动态规划Part05|1049. 最后一块石头的重量 II|494. 目标和|474.一和零
1049.最后一块石头的重量II没有思路,不知道如何用背包问题解决Carl提示和416很像,也是将石头分为两组,只是416题要求两组价值完全一样,本题则是希望价值越大越好,越大越接近总值的一半,就会令两组的差距越小本题用的滚动一维dp数组,有很多要注意的细节:voidtest_1_wei_bag_problem(){vectorweight={1,3,4};vectorvalue={15,20,3
古德猫宁已存在
·
2024-01-14 16:53
动态规划
算法
数据结构
leetcode
c++
代码
随想录
算法训练营第43天 | 动态规划 part05 ● 1049. 最后一块石头的重量 II ● 494. 目标和 ● 474.一和零
这个时候我应该联想到背包问题只能解决组合的,所以这道题我那样想顺序的想法就是错的,要转变思路看了
随想录
学会了,自己写了:先用数学想一下n个(y-x)相加,即这些y之和-这些x之和=》分成重量尽可能接近的两堆
weixin_51674457
·
2024-01-14 16:52
代码随想录一刷
动态规划
算法
leetcode
c++
代码
随想录
算法训练营第四十三天|1049. 最后一块石头的重量 II、494. 目标和、474. 一和零
第九章动态规划part051049.最后一块石头的重量II有一堆石头,用整数数组stones表示。其中stones[i]表示第i块石头的重量。每一回合,从中选出任意两块石头,然后将它们一起粉碎。假设石头的重量分别为x和y,且x&stones){intsum=0;for(inti=0;idp(target+1,0);for(inti=stones[0];i0;j--){if(j>=stones[i]
Keponcod
·
2024-01-14 16:20
算法
动态规划
leetcode
代码
随想录
|day43| 动态规划part05---------● 1049. 最后一块石头的重量 II ● 494. 目标和 ● 474.一和零
总链接:第九章动态规划part051049.最后一块石头的重量II链接:代码
随想录
本题就和昨天的416.分割等和子集很像了,可以尝试先自己思考做一做。自己的答案,看着视频后做出来了,没有细看视频。
isabelightL
·
2024-01-14 16:49
代码随想录
动态规划
算法
软件工程
相关知识
软件开发模型瀑布模型适用于软件需求很明确的软件项目迭代模型螺旋模型V模型、喷泉模型、RAD构建组装模型同一过程模型敏捷开发方法信息系统开发方法需求分类与需求获取结构化设计概要设计将需求转化为软件的模块划分,确定模块之间的调用关系,详细设计是将模块进行细分,得到详细的数据结构和算法。软件测试测试原型与类型测试用例设计测试阶段McCabe复杂度系统运行与维护软件过程改进CMMI项目管理题目答案:D,C
努力发光的程序员
·
2024-01-14 16:19
软考
软件工程
软件设计师
代码
随想录
算法训练营第46天|动态规划part04|1049. 最后一块石头的重量 II、494. 目标和 、 474.一和零
代码
随想录
算法训练营第46天|动态规划part04|1049.最后一块石头的重量II、494.目标和、474.一和零1049.最后一块石头的重量II1049.最后一块石头的重量II代码
随想录
思路:本题其实就是尽量让石头分成重量相同的两堆
gengjiahao
·
2024-01-14 16:49
算法
动态规划
代码
随想录
训练营Day42 动态规划 part05● 1049. 最后一块石头的重量 II ● 494. 目标和 ● 474.一和零
1049.最后一块石头的重量II题目链接:1049.最后一块石头的重量II-力扣(LeetCode)文章链接:代码
随想录
(programmercarl.com)视频链接:这个背包最多能装多少?
搁浅~~
·
2024-01-14 16:49
动态规划
算法
leetcode
c++
数据结构
代码
随想录
算法训练营第四十三天 | 动态规划 part 5 | 1049. 最后一块石头的重量 II、494. 目标和、474.一和零
目录1049.最后一块石头的重量II思路代码494.目标和思路代码474.一和零思路代码1049.最后一块石头的重量IILeetcode思路本题尽量让石头分成重量相同的两堆,相撞之后剩下的石头最小,这样就化解成01背包问题了。所以本题和416.分割等和子集几乎一样。不同的地方在于,想要得到最后剩下的石头的重量,returnsum(stones)-dp[target]*2代码dp数组是True或者F
enzoherewj
·
2024-01-14 16:48
代码随想录算法训练营
算法
动态规划
leetcode
python
代码
随想录
算法训练营第43天 | 动态规划 part05:1049. 最后一块石头的重量 II、494. 目标和、474.一和零。
代码
随想录
494.目标和大家重点理解递推公式:dp[j]+=dp[j-nums[i]],这个公式后面的提问我们还会用到。
Xjy xxxpy
·
2024-01-14 16:48
代码随想录
一刷
算法
动态规划
代码
随想录
算法训练营第四十三天|动态规划part05|1049. 最后一块石头的重量 II ● 494. 目标和 ● 474.一和零
1049.最后一块石头的重量IILastStoneWeightII-LeetCodedp[j]背量j最大价dp[j]最大重量dp[j]dp[j]=max(dp[j],dp[j-stones[i]]+stones[i]dp[0]=0;for(inti=0;i=stones[i];j--)//背包容量打印dp数组classSolution{publicintlastStoneWeightII(int[
2301_78266314
·
2024-01-14 16:17
代码随想录算法训练营
算法
动态规划
上一页
37
38
39
40
41
42
43
44
下一页
按字母分类:
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
其他