
紫书
算法竞赛入门经典(紫书) 学习笔记。
暂时先放置,以后有空了再进行学习。
cwtnice
切莫胸怀大志,却又虚度光阴
展开
-
紫书 第六章 6.3树和二叉树 例题
6.3.1二叉树的编号 例题 6-6 小球下落(Dropping Balls,uva 679) 思路: 模拟整个过程运算量很大,但经过分析,小球接下来走左边还是右边和它是第几个到这个节点的小球有关。因此只需要看小球的编号,就可以知道他接下来会走哪个子树。这节省了一个巨大的数组,还降了运算量。 将小球的编号记为n,则 当n为奇数时,它是往左走的第(n+1)/2个小球 当n为偶数时,它是往右走的第n/2个小球 代码: #include<stdio.h> int main() { int k;原创 2020-06-29 20:33:37 · 222 阅读 · 0 评论 -
紫书第五章 C++与STL入门 例题练习
5.2.1排序与检索 例题5-1:大理石在哪儿?(where is Marble?,Uva 10474) 思路:先排序,后查找。使用algorithm头文件中的sort()和lower_bound()实现。 sort(first_pointer,first_pointer+n,cmp):第一个参数是数组的首地址,一般写上数组名就可以,因为数组名是一个指针常量,第二个参数是首地址加上数组的长度n(代表尾地址的下一地址),第三个参数可以不填,默认升序。 lower_bound( begin,end,num):原创 2020-06-05 16:02:10 · 391 阅读 · 0 评论