C++可调用对象包装器:std::function探析
在C语言的时代,我们可以使用函数指针来吧一个函数作为参数传递,这样我们就可以实现回调函数的机制,例如我们编写一个函数f,将函数do_sth作用于x1,x2两个变…
在C语言的时代,我们可以使用函数指针来吧一个函数作为参数传递,这样我们就可以实现回调函数的机制,例如我们编写一个函数f,将函数do_sth作用于x1,x2两个变…
上一篇我们谈到了求整数的因子的一种随机化的Polland算法,继续随机化算法的话题,我们讨论另外一类随机化算法——蒙特卡洛方法。 二、蒙特卡洛方法:M-R质性测…
大家好,今天我们来聊一聊随机化算法。所谓随机化算法,就是将算法中某些关键步骤交给随机数去决定。 看到这里,可能有的朋友就觉得这太不靠谱了!不过在之前的学习中,大…
C/C++当中,入口函数只要名为main()即可被识别并执行,虽然规范要求main函数返回值为int类型,但错误地将main返回值声明为void类型不影响C/C…
Alice想登上N阶的楼梯,每一步Alice可以上一阶也可以上两阶,问登上N阶楼梯总共有多少种方法。稍有编程基础就知道这符合Fibonacci数列,因为Alic…
Trie树主要是解决字符串前缀的搜索问题,例如最短前缀、某个前缀所含的字符串数等等。这是一种为解决一类字符串问题的树,与用于查找的树结构不同的是,Trie树需要…
利用树结构进行排序是很常见的,例如查找树中序遍历就得到有序序列,使用堆结构也可以实现排序。这里的“锦标赛排序”就构造了一种“赢者树”的结构来实现排序。 一棵赢者…
RAII是由C++之父 Bjarne Stroustrup 提出的一项概念,即资源获取即初始化。 它利用栈对象在离开作用域后自动析构的语言特点,将受限资源的生命…