DDNS-Cloudflare(Linux) bash Script #!/bin/bash # Cloudflare API credentials API_TOKEN="ab2c_1z" ZONE_ID="9xg8z1d" RECORD_NAME="yourddns.movsx.com" # Get the current IPv6 address CURRE 2024-09-17
#45 跳跃游戏 II(动态规划) 45. 跳跃游戏 II - 力扣(LeetCode) 状态描述:dp[i]为到达i需要的最短跳数。 状态转移:dp[i]=min(dp[i-1]+1,dp[i-2]+1,....,dp[i-n]+1) 初态:dp[0]=0 使用大数表示不可达简化代码 class Solution { public: 2024-09-16
#55 跳跃游戏(动态规划) 55. 跳跃游戏 - 力扣(LeetCode) 状态描述:dp[i]为i位置是否能到达 状态转移方程:dp[i] = (dp[i-1] && nums[i-1]>=1)|| (dp[i-2] && nums[i-2]>=2)||...|| (dp[i-n] && nums[i-n]>=n) 初态:d 2024-09-16
#213 打家劫舍 II(动态规划) 213. 打家劫舍 II - 力扣(LeetCode) 同#198,但是dp[n-1]不能直接生成,需要新列一个不包含nums[0]的新dp,用新dp更新dp[n-1] class Solution { public: int rob(vector<int>& nums) { 2024-09-16
#121 买卖股票的最佳时机(动态规划|分治) 121. 买卖股票的最佳时机 - 力扣(LeetCode) class Solution { public: int maxProfit(vector<int>& prices) { vector<vector<int>> dp(prices.size(), vector<i 2024-09-16
#5 最长回文子串(动态规划) 5. 最长回文子串 - 力扣(LeetCode) class Solution { public: bool isrvs(string s) { for (int i = 0; i < s.size() / 2; i++) if (s[i] != s[ 2024-09-16
#80 删除有序数组中的重复项 II(数组) 80. 删除有序数组中的重复项 II - 力扣(LeetCode) 注意vector容器同其他容器一样,.size()动态维护,使用erase+for循环时会出现“跨越”的问题,这点在动态维护的容器编程中很容易犯错。 给出本题类似数组的处理方法,注意i--和actsize--的使用。 void er 2024-09-15
#718 最长重复子数组(动态规划) 718. 最长重复子数组 - 力扣(LeetCode) 提示:Use dynamic programming. dp[i][j] will be the longest common prefix of A[i:] and B[j:]. 状态描述:dp[i][j]为nums1[i:]和nums2[j 2024-09-15
复习快排 #include<iostream> #include<unordered_map> #include<vector> using namespace std; int partition(vector<int>& arr, int low, int high) { int x = arr 2024-09-15
#3 无重复字符的最长子串(滑动窗口) 3. 无重复字符的最长子串 - 力扣(LeetCode) 指定一个窗口,窗口覆盖最长非重复子串。 迭代过程:向后探测一步。如果探测字符在窗口中,则寻找该位置,将窗口起点滑动到该位置后面。将窗口结尾推动一步,此时窗口字符串有效,更新最大长度。 class Solution { public: 2024-09-15