`
gaofen100
  • 浏览: 1227913 次
文章分类
社区版块
存档分类
最新评论
文章列表
尽管之前写过一篇关于OpenCV的介绍(http://blog.csdn.net/carson2005/article/details/5822149),但依然有朋友对其不甚了解。所以,经常能碰到有人问我诸如以下一些问题:OpenCV能不能实现人脸识别?OpenCV有没有车辆检测的API?OpenCV有没有三 ...
优先队列的异常处理类 #ifndef PQUEUEEXCEPTION_H_ #define PQUEUEEXCEPTION_H_ #include<stdexcept> #include<string> class PQueueException :public std::logic_error { public: PQueueException(const std::string &message="") :std::logic_error(message.c_str()) {} }; #endif ...
#include<iostream> using namespace std; void heapRebuild(int arr[],int root,int size); void heapSort(int arr[],int size); int main() { const int SIZE=10; int arr[SIZE]={10,2,13,41,23,52,7,31,65,90}; cout<<"original array arr :"<<endl; for(int i=0;i<SIZE;i++ ...
顾名思义,堆排序算法使用堆来排序无序的anarray数组。首先,算法将数组转换为堆。为完成转换,一种方法是使用heapInsert函数,将项逐一入堆。 还有一种方法有数组anArray的项构建堆,这种方法的效率更高。假设anArray的原始内容如图1-a所示。将数组anArray的项指派给树的节点,从根开始,从左到右,逐渐下移将数组视为二叉树。结果如图1-b所示。此后,反复调用heapRebuilt,将该树转换为堆。heapRebuilt将半堆转换为堆。半堆的子树为堆,但根为就位。但是,树中有供heapRebuilt处理的半堆吗?图1-b的树不是半堆,但查看叶子,可以找到半堆;换言之,每个 ...
定义堆类的异常处理类 #ifndef HEAP_EXCEPTION_H_ #define HEAP_EXCEPTION_H_ #include<stdexcept> #include<string> class HeapException:public std::logic_error { public: HeapException(const std::string &message="") :std::logic_error(message.c_str()) {} }; #endif 定义堆类的存储 ...
堆(heap)是与二叉查找树类似的ADT。但又不同于二叉查找树,主要体现在两个方面。第一,可将二叉查找树看着是有序的,而堆是有序的,这一概念较弱。不过,为使优先队列操作有效执行,这完全满足要求。第二,二叉查找树有多种不同形状,而堆总是完全二叉树。 堆是完全二叉树,可以为空,或者: (1)根包含的查找关键字大于或等于各个孩子的查找关键字。 (2)根包含作为子树的堆。 在这个堆的定义中,根项包含的查找关键字最大。这样的堆称为maxheap。相对而言,minheap将包含最小查找关键字的项放在根中。 堆是完全二叉树,因此,若了解堆的最大规模,则可以用二叉树的基于数组的实现。图1显示 ...
关联容器的定义 STL中的关联容器有map、multimap、set、multiset。<是默认的比较运算符,但可能有个比较函数参数。这些容器提供了双向迭代器。 Map类存储(键,值)时,他们按照唯一的键来排序。Pair在<utility>中定义。Map的一个有效地功能是可使用运算符[]通过其键来建立下标。由于下标功能在map中提供,所以值可以通过insert函数输入到map中,还可以通过数组类型的赋值来输入,例如下面的语句:Month["December"]=31; Map类的部分规范如下: Template<class Key,cl ...
STL提供了priority_queue类,它是一个适配器容器。默认的基本容器类型是vector。priority_queue可以插入元素,但不能遍历元素。只能访问最上面的元素。元素在队列中出入时。会把优先级最高的元素放在队首,优先级最高的元素通过默认运算符<或比较函数对象来确定。priority_queue容器使用随机访问迭代器,采用支持front、push_back和pop_back 的容器,例如deque和vector。priority_queue最好实现为堆。下面是STL中priority_queue容器的一个简化规范: template<class T ,class Co ...
#include<algorithm> #include<vector> #include<iostream> #include<string> #include<utility> using namespace std; int main() { //create a vector of strings vector<string> s; vector<string>::iterator iter1; vector<string>::iterator iter2; ...
标准模板库提供了一组在有序范围内查找元素的操作。这些函数都是假设,除非将比较函数的对象给定位最后一个参数,否则就使用运算符<。如果将比较函数对象给定位为最后一位参数,该比较对象必须像排序元素那样查找元素。 如果指定的值出现在排序范围内,Binary_search函数就会返回true。其他算法用于查找同样的排序范围。Lower_bound函数返回指向给定值第一次出现位置的迭代器,upper_bound函数返回指向指定值最后一次出现未知的迭代器。如果没有找到该值,他们都返回容器内最后一个元素的迭代器。函数equal_range返回一对迭代器,分别表示给定值第一次出现和最后一次出现的位置 ...
转载 自己留着看 地址http://www.aslibra.com/blog/post/amoeba_mysql_proxy_rw_split.php amoeba真的是不错的稳定而灵活的数据库解决方案,阿里巴巴的技术陈思儒开始的一个开源项目,它是分布式数据库Proxy解决方案。About Amoeba 引用 Amoeba(变形虫)项目,专注 分布式数据库 proxy 开发。座落与Client、DB Server(s)之间。对客户 端透明。具有负载均衡、高可用性、sql过滤、读写分离、可路由相关的query到目标数据库、可并发请 求多台数据库合并结果。 主要解决: ...
首先为了完成老师给的任务,我选择使用amoeba(变形虫)这种工具,看了他的官方的安装文档http://docs.hexnova.com/amoeba/感觉挺简单,可是到了自己实践的时候各种不能运行啊,先是ubuntu的jdk安装遇到了点困难,我是手动安装的,然后是配置环境变量:查了下网上的各种说法无解,行倒是行可是到了安装amoeba时就是不识别,不知倒是为什么,[root@zhou]# bin/amoeba Error: JAVA_HOME environment variable is not set.很显然是环境变量的事儿,然后纠结试了无数多种配法(我奇怪的事,每种配法$ echo $j ...
.dll是在你的程序运行的时候才连接的文件,因此它是一种比较小的可执行文件格式,.dll还有其他的文件格式如.ocx等,所有的.dll文件都是可执行。 .lib是在你的程序编译连接的时候就连接的文件,因此你必须告知编译器连接的lib文件在那里。一般来说,与动态连接文件相对比,lib文件也被称为是静态连接库。当你把代码编译成这几种格式的文件时,在以后他们就不可能再被更改。如果你想使用lib文件,就必须: 1 包含一个对应的头文件告知编译器lib文件里面的具体内容 2 设置lib文件允许编译器去查找已经编译好的二进制代码 如果你想从你的代码分离一个dll文件出来代替静态连接 ...
机器学习 lesson 16 1. reinforcement learning, sequential decision making 2. credit assignment problem 3. Markov decision process - MDP 基于马尔可夫过程理论的随机动态系统的最优决策过程,英文缩写 MDP。马尔可夫决策过程是序贯决策的主要研究领域。 ...
额,还是从一个window程序的基本结构看起吧 Win32程序基本结构 注册窗口类别 RegisterClass 创建窗口 CreateWindow 启动由GetMessage和DispatchMessage构成的事件循环 被注册的回调函数 WndProc 负责相应各类事件
Global site tag (gtag.js) - Google Analytics