自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 树的遍历(递归,迭代,c++)

递归方法构造递归函数,迭代方法运用栈遍历。通过写递归函数调用递归函数来进行遍历。

2024-09-09 21:17:45 150

原创 206.反转链表(代码随想录)

给你单链表的头节点head,请你反转链表,并返回反转后的链表。

2024-07-21 11:49:08 320

原创 707.设计链表(力扣,数据结构,代码随想录)

在这段 C++ 代码中, 是一个构造函数。“” 表示这是一个接受一个整数参数 的构造函数。 “” 这种形式叫做成员初始化列表,它用于在对象创建时直接初始化成员变量 ,将传入的参数 赋值给成员变量 。 “” 同样是在成员初始化列表中,将成员变量 初始化为 ,表示初始时链表节点的下一个节点指针为空。 在 C++ 中, 和 是用来表示空指针的两种不同的字面量。null:nullptr:区别:在现代 C++ 编程中,推荐使用 而不是 ,因为它提供了更好的类型安全

2024-07-21 10:43:03 303

原创 139、单词拆分(力扣,动态规划)

返回 true 因为 "applepenapple" 可以由 "apple" "pen" "apple" 拼接成。返回 true 因为 "leetcode" 可以由 "leet" 和 "code" 拼接成。不要求字典中出现的单词全部都使用,并且字典中的单词可以重复使用。如果可以利用字典中出现的一个或多个单词拼接出。注意,你可以重复使用字典中的单词。

2024-07-19 09:29:18 267

原创 最长回文子串(动态规划)

给你一个字符串s,找到s中最长的 回文子串。"bab""aba" 同样是符合题意的答案。

2024-07-18 11:51:56 135

原创 221. 最大正方形(力扣,动态规划,c++)

组成的二维矩阵内,找到只包含。的最大正方形,并返回其面积。

2024-07-14 13:19:31 184

原创 下降路径最小和(力扣,931,动态规划)

可以从第一行中的任何元素开始,并从每一行中选择一个元素。在下一行选择的元素和当前行所选元素最多相隔一列(即位于正下方或者沿对角线向左或者向右的第一个元素)。如图所示,为和最小的两条下降路径。如图所示,为和最小的下降路径。,请你找出并返回通过。

2024-07-14 11:21:14 309

原创 120. 三角形最小路径和(动态规划)

这一行是动态规划的核心。它计算到达当前位置的最小路径和,考虑从当前位置的下方或右下方到达的最小路径和,并加上当前位置的值。数组,其初始值是三角形的最后一行。这是因为最后一行的元素就是它们自己的路径和。自顶向下的最小路径和为 11(即,2 + 3 + 5 + 1 = 11)。是一个从倒数第二行开始,向上遍历三角形的循环。数组的第一个元素,这是到达三角形顶部(即。,这是因为三角形的每一行的长度是递减的。开始的,这意味着它不会执行循环体。是一个遍历当前行的循环。,找出自顶向下的最小路径和。

2024-07-13 18:27:02 158

原创 爬楼梯(力扣:70,c++,递归)

【代码】爬楼梯(力扣:70,c++,递归)

2024-07-13 11:37:19 149

原创 高精度运算(加,减,乘,除)

【代码】高精度运算(加,减,乘,除)

2024-07-11 09:25:31 171

原创 集合的划分(递归方法)

则称S1,S2,……,Sk是集合S的一个划分……它相当于把S集合中的n个元素a1,a2,。,an放入k个(0<k≤n<30)无标号的盒子中,使得没有一个盒子为空。请你确定n个元素a1,a2,,an放入k个无标号盒子中去的划分数S(n,k)……设S是一个具有nn个元素的集合,S=〈a1,a2,……,an〉S=〈a1,a2,……,an〉,现将S划分成k个满足下列条件的子集合S1,S2,n个元素a1,a2,,an放入k个无标号盒子中去的划分数S(n,k)n个元素分到k个集合。

2024-07-10 16:58:37 214

原创 放苹果(递归方法)

把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?(用K表示)5,1,1和1,5,1 是同一种分法。第一行是测试数据的数目t(0<=t<=20)。以下每行均包含二个整数M和N,以空格分开。1<=M,N<=10。时,是否空盘是可控的,此时放法就等于:空盘子的方法+放满的方法,也就是。个空盘,所以直接缩范围,考虑临界情况-->勉强放满时,此时值为。问题中可以有空盘子,所以我们要考虑的方法中就要分为。对输入的每组数据M和N,用一行输出相应的K。m(苹果数)、n(盘子数)

2024-07-10 16:46:26 505

原创 超级楼梯(递归算法)

然后规律,也就是状态转移方程,其实想上到第n级台阶有两种方法:1.从n-1级台阶走1阶上去。2.从n-2级台阶走两节台阶上去,既然确定了走几节台阶,那么到这节台阶的方法也自然是前两者之和。很自然的不难想到使用集合存储,集合中是不保存重复数据的,而且位置也正确。输入数据首先包含一个整数N,表示测试实例的个数,然后是N行数据,每行包含一个整数M(1<=M<=40),表示楼梯的级数。有一楼梯共M级,刚开始时你在第一级,若每次只能跨上一级或二级,要走上第M级,共有多少种走法?那么话不多说说,请看vcr(代码)

2024-07-10 14:08:30 216

原创 扩号匹配问题(递归方法)

规定(与常见的算数式子一样)任何一个左括号都从内到外与在它右边且距离最近的右括号匹配。写一个程序,找到无法匹配的左括号和右括号,输出原来字符串,并在下一行标出不能匹配的括号。不能匹配的左括号用"$"标注,不能匹配的右括号用"?对每组输出数据,输出两行,第一行包含原始输入字符,第二行由"$","?"和空格组成,"$"和"?"表示与之对应的左括号和右括号不能匹配。输入包括多组数据,每组数据一行,包含一个字符串,只包含左右括号和大小写字母,字符串长度不超过100。

2024-07-09 15:51:21 194

原创 全排列(递归方法)

题目 3030:时间限制: 2s 内存限制: 192MB。

2024-07-09 14:36:00 693

原创 逆波兰表达式(递归求解)

逆波兰表达式是一种把运算符前置的算术表达式,例如普通的表达式2 + 3的逆波兰表示法为+ 2 3。逆波兰表达式的优点是运算符之间不必有优先级关系,也不必用括号改变运算次序,例如(2 + 3) * 4的逆波兰表示法为* + 2 3 4。本题求解逆波兰表达式的值,其中运算符包括+ - * /四个。看到这题相信大多数人的第一反映是用栈求解,但是由于题目中描述没有优先级,而且从示例可以看出,实际上只把相邻数字间运算符提出来了。(具体看代码及其附带注释)可直接用printf("%f\n", v)输出表达式的值v。

2024-07-08 17:54:31 553 1

空空如也

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

TA关注的人

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