当前位置: 首页 > news >正文

为什么自己做的网站打开是乱码学生html个人网页代码

为什么自己做的网站打开是乱码,学生html个人网页代码,信息流广告,建设项目Every day a Leetcode 题目来源#xff1a;646. 最长数对链 解法1#xff1a;动态规划 定义 dp[i] 为以 pairs[i] 为结尾的最长数对链的长度。 初始化时#xff0c;dp 数组需要全部赋值为 1。 计算 dp[i] 时#xff0c;可以先找出所有的满足 pairs[i][0]pairs[j]…Every day a Leetcode 题目来源646. 最长数对链 解法1动态规划 定义 dp[i] 为以 pairs[i] 为结尾的最长数对链的长度。 初始化时dp 数组需要全部赋值为 1。 计算 dp[i] 时可以先找出所有的满足 pairs[i][0]pairs[j][1] 的 j并求出最大的 dp[j]dp[i] 的值即可赋为这个最大值加一。 状态转移方程dp[i] max(dp[i], dp[j] 1) 这种动态规划的思路要求计算 dp[i] 时所有潜在的 dp[j] 已经计算完成可以先将 pairs 数组进行排序来满足这一要求。 代码 /** lc appleetcode.cn id646 langcpp** [646] 最长数对链*/// lc codestart class Solution { public:int findLongestChain(vectorvectorint pairs){// 特判if (pairs.empty())return 0;int n pairs.size();// 状态数组并初始化vectorint dp(n 1, 1);// dp[i]: 为 pairs[i] 结尾的最长数对链的长度sort(pairs.begin(), pairs.end());// 状态转移for (int i 1; i n; i)for (int j 1; j i; j)if (pairs[j - 1][1] pairs[i - 1][0])dp[i] max(dp[i], dp[j] 1);return dp[n];} }; // lc codeend 结果 复杂度分析 时间复杂度O(n2)其中 n 为 pairs 数组的长度。排序的时间复杂度为 O(nlogn)两层 for 循环的时间复杂度为 O(n2)。 空间复杂度O(n)dp 数组的空间复杂度为 O(n)。 解法2最长递增子序列 方法一实际上是「300. 最长递增子序列」的动态规划解法这个解法可以改造为贪心 二分查找的形式。 用一个数组 arr 来记录当前最优情况arr[i] 就表示长度为 i1 的数对链的末尾可以取得的最小值遇到一个新数对时先用二分查找得到这个数对可以放置的位置再更新 arr。 代码 /** lc appleetcode.cn id646 langcpp** [646] 最长数对链*/// lc codestart// 动态规划// class Solution // { // public: // int findLongestChain(vectorvectorint pairs) // { // // 特判 // if (pairs.empty()) // return 0; // int n pairs.size(); // // 状态数组并初始化 // vectorint dp(n 1, 1); // // dp[i]: 为 pairs[i] 结尾的最长数对链的长度 // sort(pairs.begin(), pairs.end()); // // 状态转移 // for (int i 1; i n; i) // for (int j 1; j i; j) // if (pairs[j - 1][1] pairs[i - 1][0]) // dp[i] max(dp[i], dp[j] 1); // return dp[n]; // } // };// 贪心 二分查找class Solution { public:int findLongestChain(vectorvectorint pairs){sort(pairs.begin(), pairs.end());vectorint dp;for (auto pair : pairs){int x pair[0], y pair[1];if (dp.empty() || dp.back() x)dp.push_back(y);else{auto iter lower_bound(dp.begin(), dp.end(), x);*iter min(*iter, y);}}return dp.size();} }; // lc codeend 结果 复杂度分析 时间复杂度O(nlog⁡n)其中 n 为 pairs 的长度。排序的时间复杂度为 O(nlogn)二分查找的时间复杂度为 O(nlogn)二分的次数为 O(n)。 空间复杂度O(n)数组 arr 的长度最多为 O(n)。 解法3贪心 要挑选最长数对链的第一个数对时最优的选择是挑选第二个数字最小的这样能给挑选后续的数对留下更多的空间。 挑完第一个数对后要挑第二个数对时也是按照相同的思路是在剩下的数对中第一个数字满足题意的条件下挑选第二个数字最小的。 按照这样的思路可以先将输入按照第二个数字排序然后不停地判断第一个数字是否能满足大于前一个数对的第二个数字即可。 代码 class Solution { private:// 排序函数static bool cmp(const vectorint a, const vectorint b){return a[1] b[1];}public:int findLongestChain(vectorvectorint pairs){int cur INT_MIN, res 0;sort(pairs.begin(), pairs.end(), cmp);for (auto pair : pairs){int x pair[0], y pair[1];if (cur x){cur y;res;}}return res;} };结果 复杂度分析 时间复杂度O(nlog⁡n)其中 n 为 pairs 的长度。排序的时间复杂度为 O(nlogn)。 空间复杂度O(log⁡n)为排序的空间复杂度。
http://www.sczhlp.com/news/197039/

相关文章:

  • 小团队兼职做网站正规网站制作公司哪里有
  • 海宁市住房与城乡规划建设局网站Thinkphp开发wordpress
  • 网站开发专员的面试题网址大全2345电脑版
  • 网站的整合网站建设指导方案
  • 做复印机的模板网站中国电信商圈经验分享
  • 衙门口网站建设凡科小程序怎么制作
  • 青岛做网站建网站怎么在wordpress添加幻灯片
  • 湛江网站seo太原网站建设 世纪优创
  • aspmysql做网站网站百度推广怎么做
  • mysql数据库网站wordpress 运行时间
  • 中国职业球队广东专业网站优化公司
  • 网站公司优势iis部署网站 asp 物理路径
  • 南山网站优化网页设计实训报告总结1000字
  • 免费建一级域名网站唐山网站建设哪家优惠
  • 连云港网站备案在哪免费创建app网站
  • 公司网站要多大空间怎么做网站内的搜索
  • 深圳成交型网站建设公司温州百度seo排名
  • 有没有免费的网站软件wordpress怎么优化进程
  • 2025 年济南画室最新推荐榜单:聚焦小班教学与全封闭管理,权威解析优质画室品牌榜山东画室推荐
  • uni-app x封装request,统一API接口请求
  • 2025年无锡黄金回收商家电话最新权威推荐榜:专业鉴定与高价回收口碑之选,黄金回收公司推荐
  • 2025年黄金回收品牌最新权威推荐榜:专业鉴定与高价回收口碑之选,正规资质黄金回收厂家精选指南
  • 站点搭建阿里云wordpress托管
  • 做网站怎么引流广州微信网站建设
  • 备案 网站备注浙江网站建设dyfwzx
  • 北京企业官网网站建设报价做海岛旅游预定网站的
  • 中学建设校园网站方案信阳住房和城乡建设局网站
  • 西安市城乡房地产建设管理局网站影视制作公司简介
  • 做平台的网站北京好的设计公司有哪些
  • 知名网站欣赏企业建设营销型网站有哪些步骤