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

自己怎做网站后台郑州seo全网营销

自己怎做网站后台,郑州seo全网营销,怎么能看出别人的网站是哪一家做,怎么修改网站后台权限一、题目解析 这里要注意恰好这个字眼,说明对任意数减小一半是不需要向上取整的,所以我们需要定义double类型的数据。 二、算法解析 我们需要将数组和减小为一半的次数最少,所以根据贪心算法,我们需要取数组中最大的数进行减半操…

一、题目解析

这里要注意恰好这个字眼,说明对任意数减小一半是不需要向上取整的,所以我们需要定义double类型的数据。

二、算法解析

我们需要将数组和减小为一半的次数最少,所以根据贪心算法,我们需要取数组中最大的数进行减半操作 ,但最优解也许不是每次都选择最大数进行减半操作,为什么贪心解就是正确的解呢?这个会在最后证明。

解法:贪心+大根堆

由于每次需要取最大的数进行 减半操作,我们可以使用大根堆来存储数据。

统计数组和的同时将数据插入到大根堆中,top出最大的数对其减半,然后pop掉原来数据,并将减半后的数重新插入回去,计数器++,然后重复这样的行为直到数组和减少到至少一半为止。

这里的大根堆使用 priority_queue容器。

根据上面的解析先自己编写代码,链接:2208. 将数组和减半的最少操作次数 - 力扣(LeetCode)

三、代码示例

class Solution {
public:int halveArray(vector<int>& nums) {priority_queue<double> maxHeap;//大根堆double sum1 = 0.0;//sum1是原本的数组和for(auto e : nums){maxHeap.push(e);//插入元素sum1 += e;}double sum2 = sum1;//sum2是减半后的数组和int count = 0;while((sum1 - sum2) < (sum1/2))//当减小的部分大于或等于sum1的一半时,循环结束{double tmp = maxHeap.top();//获取堆顶元素maxHeap.pop();//删除堆顶元素sum2 -= tmp;sum2 += (tmp/2);maxHeap.push(tmp/2);count++;//计数器}return  count;}
};

 

 四、证明

证明方法:交换论证法

看到最后,如果对您有所帮助还请留下一个免费的赞和收藏,小编感激不尽,期待我们下期再见! 

http://www.dtcms.com/wzjs/453873.html

相关文章:

  • 网站建设空间是指什么最新热点新闻
  • 内容营销的概念石家庄网站建设seo公司
  • 网站设计原型工具广州市网络seo外包
  • 长沙做网站建设的站长之家域名查询官网
  • 今天鞍山的招工信息搜索引擎优化的内容有哪些
  • 简述什么是网站饥饿营销案例
  • 网上做家教哪个网站seo 培训教程
  • hanchengkeji杭州网站建设如何设计网站的首页
  • 网站建设 策划网站的宣传与推广
  • 建网站必需服务器吗关键词投放
  • 做产品网站淘宝百度深圳英文网站推广
  • 有没有专门做美食的网站seo系统培训班
  • 高端网站建设必去磐石网络免费推广
  • 网站站点地图设计常见的网络营销推广方式有哪些
  • 赣州建设公司网站网络推广运营优化
  • 南京和筑建设有限公司网站北京公司排名seo
  • 旅游网站建设策划方案my77728域名查询
  • 内销机械做哪个网站好网址查询网站
  • 设计网站设计目标给公司做网站要多少钱
  • 网站制作视频教程免费漳州网络推广
  • 上海自适应网站设计网络营销案例成功案例
  • 江门seo计费管理济南seo整站优化招商电话
  • 阿里云做电影网站吗seo综合查询网站
  • 做景观素材有哪几个网站自己做网站网页归档
  • 廊坊做网站公司排名东莞网站seo公司哪家大
  • 建网站前途成品网站货源1
  • 建设音乐网站功能定位百度关键词多少钱一个月
  • 个人建个网站多少钱百度首页排名优化多少钱
  • 个人备案做运营网站嘉兴seo外包公司
  • wordpress自定义额外css背景潍坊网站seo