随笔分类 -  python算法

摘要:在蓝桥杯竞赛中,常见的图存储方式包括邻接矩阵、邻接表、链式前向星等。这些存储方式在不同的场景下有着各自的优势和适用性。 邻接矩阵 邻接矩阵是最常见的图的表示方法之一。对于一个有$n$个顶点的图,可以用一个$n \times n$的二维数组来表示。如果图中存在从顶点$i$到顶点$j$的边,则$adj[ 阅读全文 »
posted @ 2024-03-31 17:34 taixian 阅读(130) 评论(0) 推荐(0) 编辑
摘要:Kruskal算法和Prim算法都是用于解决图的最小生成树问题的经典算法 阅读全文 »
posted @ 2024-03-25 22:39 taixian 阅读(60) 评论(0) 推荐(0) 编辑
摘要:题目: 647 回文子串 https://leetcode.cn/problems/palindromic-substrings/description/ 讲解: https://programmercarl.com/0647.%E5%9B%9E%E6%96%87%E5%AD%90%E4%B8%B2 阅读全文 »
posted @ 2024-02-19 12:04 taixian 阅读(30) 评论(0) 推荐(0) 编辑
摘要:参考例题 力扣718 https://leetcode.cn/problems/maximum-length-of-repeated-subarray/solutions/310917/yi-zhang-biao-ba-ju-hua-kan-dong-dong-tai-gui-hua-/ 力扣 11 阅读全文 »
posted @ 2024-02-19 10:55 taixian 阅读(13) 评论(0) 推荐(0) 编辑
摘要:问题一:最长严格递增子序列的长度 题目: 给定一个整数数组 nums ,找到其中最长严格递增子序列的长度。 状态定义: dp[i] 表示以 nums[i] 结尾的最长严格递增子序列的长度。 状态转移方程 对于每个 nums[i],遍历其之前的所有元素 nums[j](j 从 0 到 i-1),如果 阅读全文 »
posted @ 2024-02-19 10:36 taixian 阅读(63) 评论(0) 推荐(0) 编辑
摘要:N叉树(N-ary Tree)的类型和代码模板与二叉树有些相似,但由于N叉树具有多个子节点,因此在遍历和节点定义上有所不同。以下是N叉树的类型和相应的代码模板: N叉树节点的定义: class Node: def __init__(self, val=None, children=None): se 阅读全文 »
posted @ 2024-02-18 11:28 taixian 阅读(30) 评论(0) 推荐(0) 编辑
摘要:在解决背包问题时,使用一维动态规划数组和二维动态规划数组都是常见的方法,选择哪种方式取决于问题的特点和解法的需要。 使用一维DP数组的情况: 状态转移方程只涉及到上一行的元素: 当状态转移方程只涉及到上一行的元素时,可以使用一维DP数组。这样能够降低空间复杂度,使算法更为简洁。 问题中只需要考虑当前 阅读全文 »
posted @ 2024-02-17 16:54 taixian 阅读(255) 评论(0) 推荐(0) 编辑
摘要:贪心法(Greedy Algorithm)和双指针法(Two Pointer Technique)都是一些常见的算法技巧,但它们解决问题的思路有一些不同。 贪心法(Greedy Algorithm): 贪心法是一种在每一步选择中都采取当前状态下最好或最优的选择,从而希望全局能够得到最优解的算法思想。 阅读全文 »
posted @ 2024-02-16 11:21 taixian 阅读(107) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示