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

如何给网站做2维码seo全称

如何给网站做2维码,seo全称,天津百度关键词推广公司,wordpress老版编辑一、贪心算法基础 贪心算法(Greedy Algorithm)是一种在每一步选择中都采取当前状态下最优决策的算法策略。其核心特点是: 局部最优选择:不考虑长远影响 无后效性:当前决策不影响之前状态 高效性:通常时间…

一、贪心算法基础

贪心算法(Greedy Algorithm)是一种在每一步选择中都采取当前状态下最优决策的算法策略。其核心特点是:

  • 局部最优选择:不考虑长远影响

  • 无后效性:当前决策不影响之前状态

  • 高效性:通常时间复杂度较低

// 经典贪心问题:找零钱
vector<int> greedyChange(int amount, vector<int>& coins) {sort(coins.rbegin(), coins.rend()); // 降序排序vector<int> result;for(int coin : coins){while(amount >= coin){amount -= coin;result.push_back(coin);}}return amount == 0 ? result : vector<int>();
}

二、典型问题解析

1. 区间调度问题

struct Interval {int start, end;
};int intervalSchedule(vector<Interval>& intervals) {sort(intervals.begin(), intervals.end(), [](auto& a, auto& b){ return a.end < b.end; });int count = 0, end = INT_MIN;for(auto& inv : intervals){if(inv.start >= end){count++;end = inv.end;}}return count;
}

2. 霍夫曼编码

struct Node {char ch;int freq;Node *left, *right;
};struct comp {bool operator()(Node* l, Node* r){return l->freq > r->freq;}
};Node* buildHuffmanTree(string text) {// 统计频率unordered_map<char, int> freq;for(char c : text) freq[c]++;// 优先队列priority_queue<Node*, vector<Node*>, comp> pq;for(auto& p : freq)pq.push(new Node{p.first, p.second, nullptr, nullptr});// 构建树while(pq.size() > 1){Node* left = pq.top(); pq.pop();Node* right = pq.top(); pq.pop();Node* parent = new Node{'\0', left->freq+right->freq, left, right};pq.push(parent);}return pq.top();
}

三、贪心算法的正确性证明

  1. 贪心选择性质:证明局部最优能导致全局最优

  2. 最优子结构:问题的最优解包含子问题的最优解

  3. 常用证明方法:

    • 数学归纳法

    • 交换论证法

    • 决策树分析法

四、C++实现技巧

  1. 优先队列的使用:

priority_queue<int, vector<int>, greater<int>> minHeap;
  1. 自定义排序:

sort(items.begin(), items.end(), [](auto& a, auto& b){return a.value/(double)a.weight > b.value/(double)b.weight;
});
  1. STL算法组合:

auto it = max_element(begin, end, comp);

五、贪心算法的局限性

  1. 不适用于需要全局考虑的问题

  2. 可能陷入局部最优而非全局最优

  3. 典型反例:0-1背包问题

六、实战练习建议

  1. LeetCode经典题目:

    • 分发饼干

    • 买卖股票的最佳时机II

    • 无重叠区间

  2. 调试技巧:

#define DEBUG
#ifdef DEBUG#define debug(x) cout << #x << " = " << x << endl
#else#define debug(x)
#endif

七、进阶思考

  1. 贪心算法与动态规划的关系

  2. 拟阵理论与贪心算法

  3. 近似算法中的贪心策略

http://www.dtcms.com/a/562835.html

相关文章:

  • UVa 1398 Meteor
  • wordpress仿站工具网站设计文字超链接
  • 网站建设制作的规划方案施工企业公司管理制度
  • 网站编辑转做新媒体运营营销手段和营销方式
  • 嵌入式板卡组成介绍
  • 骗别人做网站非法网站开发
  • 秦皇岛 免费建网站云主机搭建网站
  • 网站开发指什么马鞍山网站建设公
  • 全屏网站 图片优化网站开发程序说明
  • 浙江省城乡住房建设厅网站网站网页进口
  • 建立本地网站新建的网站必须要备案吗
  • 个人网站备案 备注泉州seo排名工具
  • 太仓市质监站网址零食网站建设描述书
  • 灰色网站建设优化响应式网站企业
  • 图像配准技术综述:从传统特征到深度学习
  • 微信小程序组件库企业网站优化案例
  • 做网站一个月工资企业网站与网络营销
  • 网站百度收录变少厦门企业制作网站方案
  • 江苏成章建设集团有限公司官方网站网络推广工作好吗
  • 做网站设计制作的公司网站设计建设维护
  • 做网站编辑器wordpress to cms
  • google中文搜索引擎入口福州网站设计知名乐云seo
  • 做响应式网站从美洲开始做皇帝免费阅读网站
  • 多态的介绍
  • 有没有做美食的小视频网站wordpress如何备份 网站
  • (125页PPT)盐化行业数字化转型规划详细方案(附下载方式)
  • 全站仪为什么要建站彬县网站
  • 学字体网站企业建网站品牌
  • OC母语的Developer对Swift常见问题的整理
  • 网站新闻置顶怎么做做企业品牌网站的公司