总结033—第十一周

这周还是继续看文章和做题,文章看到了树链,这部分了解了重儿子,轻儿子,重边,轻边,重链,轻链的概念,还有可以解决哪些类的问题。

树链可以解决:动态修改节点值,查询从某个节点到另一节点路径上点权和。

再写一下这周感觉比较有收获的两个题

第一题P1531 I Hate It线段树类问题,用树状数组也可以,不过这题数据很水,直接模拟的话也可以,时间复杂度为O(nm),单点修改,区间询问。这个题主要是训练下用树状数组和线段树怎样做题。

第二题P1090 [NOIP2004 提高组] 合并果子优先队列,开始的时候直到用STL可以做,但直接用的for中含有sort结果超时,于是记得以前看过的一篇文章中有这样一行代码,对于这题来说刚刚好,先求最小的两个值的和,然后把这两个值pop,再把和放进去,就这样序列中有一个值的话,结束循环。

priority_queue<int,vector<int>,greater<int>>q;//最小值的优先序列

二分查找的函数有三个

lower_bound(起始地址,结束地址,要查找的数值) 返回的是数值 第一个 出现的位置。

upper_bound(起始地址,结束地址,要查找的数值) 返回的是 第一个大于待查找数值 出现的位置。

binary_search(起始地址,结束地址,要查找的数值) 返回的是是否存在这么一个数,是一个bool值。

 下周争取再多看写文章和多做些题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值