Leetcode
独自莫凭欄
。。
展开
-
LeetCode 动态规划(DP)题单
代码随想录——LeetCode DP题单整数划分LeetCode 343 整数划分class Solution {public: int integerBreak(int n) { vector<int> dp(n+1); dp[2] = 1; for(int i = 3; i <= n; i++) { for(int j = 1; j <= i-1 ; j++) {原创 2022-01-19 14:50:05 · 498 阅读 · 0 评论 -
LeetCode 496. 下一个更大元素 I
LeetCode 496. 下一个更大元素 Iclass Solution {public: vector<int> nextGreaterElement(vector<int>& nums1, vector<int>& nums2) { stack<int> S; unordered_map<int, int> hash; vector<int> ans;原创 2021-08-17 20:08:39 · 68 阅读 · 0 评论 -
LeetCode 119. 杨辉三角 II
安慰自己的大水题class Solution {public: vector<int> getRow(int rowIndex) { vector<int> dp[rowIndex + 1]; for (int i = 0; i <= rowIndex; ++i) { dp[i].resize(i + 1); dp[i][0] = dp[i][i] = 1; f原创 2021-07-23 21:22:43 · 55 阅读 · 0 评论 -
剑指 Offer 52. 两个链表的第一个公共节点
剑指 Offer 52. 两个链表的第一个公共节点剑指 Offer 52. 两个链表的第一个公共节点/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: ListNode *getI原创 2021-07-21 08:06:22 · 47 阅读 · 0 评论 -
LeetCode 1838最高频率元素频数
LeetCode 1838最高频率元素频数这每一一题属于是没看懂,先记下来,到时候来看看,有点迷糊元素的 频数 是该元素在一个数组中出现的次数。给你一个整数数组 nums 和一个整数 k 。在一步操作中,你可以选择 nums 的一个下标,并将该下标对应元素的值增加 1 。执行最多 k 次操作后,返回数组中最高频元素的 最大可能频数 。示例 1:输入:nums = [1,2,4], k = 5输出:3解释:对第一个元素执行 3 次递增操作,对第二个元素执 2 次递增操作,此时 num转载 2021-07-20 22:13:30 · 98 阅读 · 0 评论 -
蓝桥杯——公交汽车(完全背包-动态规划)
蓝桥杯——公交汽车(完全背包-动态规划)整破防了,这题目倒是没那么难。可是我看答案都看了好久没看懂。后来发现原来我题目都没看懂。哭了,浪费了一个晚上。还是有带你迷糊。先记下来吧这题真的要吐槽一下oj,题目都没讲清楚下面这个图片是网上找的。应该说比较清楚。其实意思是你在下车后可以选择坐几公里。几公里对应的是表格上面的收费,这里是再走几公里的收费,不包括前面你坐车的历程其实类似于一个完全背包。公里数看为物品重量,总行程是背包容量。就是要背包装满,且price最小。#include<io原创 2021-05-31 20:45:58 · 461 阅读 · 8 评论 -
Leetcode 12.整数转罗马数字(中等)
Leetcode 12.整数转罗马数字(中等)这题思想很多,这个题解看的是评论区一个大佬用Python写的,自己改成了java代码。用的方法真的很巧。自己写暴力枚举很笨。这个代码很优美,基本是最短的,但是时间复杂度比较高。这个算法是考虑数的测试范围给出了,范围再大点估计就不好用了class Solution { public String intToRoman(int num) { int values[]={1000,900,500,400,100,90,50,40,10,9,5原创 2021-05-22 15:52:37 · 83 阅读 · 0 评论