
简介
该用户还未填写简介
擅长的技术栈
未填写擅长的技术栈
可提供的服务
暂无可提供的服务
数据结构算法学习:LeetCode热题100-动态规划篇(上)(爬楼梯、杨辉三角、打家劫舍、完全平方数、零钱兑换)
本文精选了LeetCode热题100中的五个经典动态规划问题,包括爬楼梯(斐波那契数列)、杨辉三角(组合数生成)、打家劫舍(线性DP)、完全平方数(完全背包变种)和零钱兑换(完全背包)。通过分析每个问题的状态转移方程和最优子结构,展示了动态规划的核心思想:将复杂问题分解为子问题并存储中间结果以避免重复计算。同时针对不同问题特点,提供了空间优化技巧,如状态压缩和滚动数组等方法。这些案例涵盖了从基础到
数据结构算法学习:LeetCode热题100-滑动窗口篇(无重复字符的最长子串、找到字符串中所有字母异位词)
本文通过两道经典例题展示了滑动窗口技术在字符串处理中的高效应用。第一题通过哈希表记录字符位置,动态调整窗口边界求解最长无重复子串;第二题采用双哈希表和匹配计数器,利用固定窗口快速定位所有字母异位词。两种方法均以O(n)时间复杂度解决问题,体现了滑动窗口在优化字符串匹配和查找问题中的核心价值。
数据结构算法学习:LeetCode热题100-双指针篇(移动零、盛水最多的容器、三数之和、接雨水)
通过系统学习双指针类题目,我深刻体会到问题转化能力在算法解题中的核心地位。双指针技术不仅是一种高效的编程技巧,更是一种重要的思维范式——它通过巧妙设置指针移动规则,从根本上减少了对冗余数据的重复扫描,从而显著优化算法性能。
到底了







