| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 数据结构与算法 -> leetcode 千题斩 -> 正文阅读 |
|
[数据结构与算法]leetcode 千题斩 |
千题只是目前的一个目标,在这里会进行简单总结: 代码维护 https://github.com/huqinwei/leetcode_practice 文件说明: vs2015工程 100题一个文件 Solution_1xx.h代表100-199题 Solution_11xx.h代表1100-1199题 TODO:考虑做一个检索,甚至只需要输入题号就能执行函数(但是有些函数甚至需要依赖leetcode提供接口去验证某些数字,所以再考虑) 题目索引:1. 2. ....... 999. 类型索引:双指针:DFS:动态规划:其实入门不难,就三点:知道状态是怎么迭代的,知道初始怎么设置,最重要的是,要知道到底要求的是什么东西。 爬楼梯: 滑窗法直接算,pqr的滑窗概念,相似的还能用到fibonacci和tribonacci。 dp数组法,和滑窗本质一样,就是形式不同。设好初始值,每一层的可能性就是前两层的可能性的叠加。 求的是可能性。 最小花费爬楼梯:你的“当前状态”其实应该是走过所有楼梯的下一个位置,n节楼梯的结束位置是[n](起始0)。 求的是花费。 打家劫舍:其实可以看做最大花费爬楼梯。和爬楼梯不太一样的是,爬楼梯没有互斥条件,互斥条件是打家劫舍难的一点,其实想明白也就简单了,每条状态i都是衡量如下条件得出来的: max(dp[i-2]+dp[i],dp[i-1]) |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/25 23:19:20- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |