leetCode算法练习
文章平均质量分 56
Lowjin_
追风赶月莫停留,平芜尽处是春山
展开
-
给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2,另有两个整数 m 和 n ,分别表示 nums1 和 nums2 中的元素数目。请你 合并 nums2 到 nums1 中.
这一方法将两个数组看作队列,每次从两个数组头部取出比较小的数字放到结果中。注意,因为 m = 0 ,所以 nums1 中没有元素。nums1 中仅存的 0 仅仅是为了确保合并结果可以顺利存放到 nums1 中。先将nums2的元素合成到nums1中,再对nums1进行排序。,5,6] ,其中斜体加粗标注的为 nums1 中的元素。需要合并 [1,2,3] 和 [2,5,6]。需要合并的数组是 [] 和 [1]。个元素表示应合并的元素,后。需要合并 [1] 和 []。合并结果是 [1]。原创 2024-03-11 14:39:21 · 586 阅读 · 0 评论 -
斐波那契数 (通常用 F(n) 表示)形成的序列称为 斐波那契数列 。该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和。
我们可以借鉴上一篇文章中爬楼梯的算法,这里的f(0) 和f(1)的值固定,就相当于是爬一个台阶和两个台阶的种类是固定的,此时求斐波那契数列就相当于是求爬楼梯我可能性,利用循环解决,避免了使用递归,大大减少空间和时间消耗。F(n) = F(n - 1) + F(n - 2),其中 n > 1。逻辑简单明确,但相当占内存。原创 2024-03-10 12:23:30 · 734 阅读 · 3 评论 -
假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?
这道题目和动态规划:斐波那契数题目基本是一样的,但是会发现本题相比动态规划:斐波那契数难多了,为什么呢?关键是动态规划:斐波那契数题目描述就已经把动规五部曲里的递归公式和如何初始化都给出来了,剩下几部曲也自然而然的推出来了。而本题,就需要逐个分析了,大家现在应该初步感受出关于动态规划,你该了解这些!里给出的动规五部曲了。简单题是用来掌握方法论的,例如昨天斐波那契的题目够简单了吧,但昨天和今天可以使用一套方法分析出来的,这就是方法论!原创 2024-03-10 11:43:30 · 1885 阅读 · 1 评论