
算法练习
文章平均质量分 80
隔壁皮皮王
这个作者很懒,什么都没留下…
展开
-
算法练习——0-1背包问题(回溯法)
0-1背包问题(回溯法)目录0-1背包问题(回溯法)题目:示例:分析:回溯法(探索与回溯法)题目解析:代码:题目:给定n个重量为w1,w2,w3,…,wn,价值为v1,v2,v3,…,vn的物品和容量为C的背包求这个物品中一个最有价值的子集,使得在满足背包的容量的前提下,包内的总价值最大注意:0-1背包问题指的是每个物品只能使用一次示例:示例:输入: int[] weight = {2,5,3,4}; int[] value = {10,7,4,6}; int c = 10原创 2021-08-23 01:04:08 · 3377 阅读 · 0 评论 -
最大子数组和(连续子数组的最大和)—— 提高篇
最大子数组和此题解法仅为为个人理解,如有其他思路或解法欢迎来探讨!基础篇链接:最大子数组和(连续子数组的最大和)—— 基础篇目录最大子数组和题目:示例:分析:代码:题目:已知一个整数数组 arr,找到子数组的最大和(子数组最少包含一个元素)并返回这个子数组。子数组元素顺序不发生改变且需连续。示例:输入: arr = [-2,1,-3,4,-1,2,1,-5,4]输出: sum = 6 ,nums = [4,-1,2,1] 分析:这道题打眼一看就是一道考察动态规划的题(当原创 2021-08-15 21:52:55 · 2198 阅读 · 0 评论 -
最大子数组和(连续子数组的最大和)—— 基础篇
最大子数组和(动态规划、分治法):此题解法仅为为个人理解,如有其他思路或解法欢迎来探讨!力扣链接:连续子数组的最大和目录最大子数组和(动态规划、分治法):题目:示例:分析:代码:动态规划:分治法(具体讲解提高篇有):我自己的另一种写法:题目:输入一个整型数组,数组中的一个或连续多个整数组成一个子数组。求所有子数组的和的最大值。示例:输入: nums = [-2,1,-3,4,-1,2,1,-5,4]输出: 6解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。分析:原创 2021-08-11 20:01:15 · 5613 阅读 · 2 评论 -
算法练习——实现二叉树前序、中序和后序遍历
实现二叉树前序、中序和后序遍历:目录实现二叉树前序、中序和后序遍历:题目:示例:分析:代码:题目:实现二叉树前序、中序和后序遍历提示:使用递归实现示例:示例:输入:/* 1 2 3 4 5 6*/前序输出:1 2 4 3 5 6中序输出:4 2 1 5 3 6后序输出:4 2 5 6 3 1分析:这道题其实不完全算是算法,其实就是二叉树的三种遍历方法:前序遍历:若二叉树为空,则空操作返回,否则先访问根结点,然后前序遍历左子树,再原创 2021-08-08 20:25:35 · 465 阅读 · 0 评论 -
在练习了十七道算法题后的一些小结
算法小结 从被要求每天做一道算法题以来,已经做了十七道不同难度的算法题了,涉及到树、链表、栈 等数据结构的知识,也使用过动态规划、递归算法、贪心算法等常用解题思路。在做过了这些题后,也发现了自己的不足与知识的欠缺,同时也总结下来了一些小小的解题思路,在这里记录一下:快速导航目录算法小结认清自己的实力优先分析题目分析简化操作与排错打好数据结构的基础多找点经典算法题来做认清自己的实力这点非常重要!!“Rome was not built in a day” 谁都是从菜鸟一步一步过来的,不要急于求原创 2021-08-06 21:50:09 · 344 阅读 · 0 评论 -
算法练习 —— Z-字型变换
Z-字型变换:此题解法仅为为个人理解,如有其他思路或解法欢迎来探讨!力扣链接:Z 字形变换目录Z-字型变换:题目:示例:分析:代码:题目:将一个给定字符串s根据给定的行数numRows,以从上往下、从左到右进行 Z 字形排列 。比如输入字符串为"PAYPALISHIRING" 行数为3时,排列如下:P A H NA P L S I I GY I R之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:"PAHNAPLSIIGYIR"。请你实现这个将原创 2021-07-25 18:36:07 · 423 阅读 · 0 评论