现在位置: 首页 > 所有2012年发表的文章
2012-08-23 23:46 工业·编程 ⁄ 共 4000字 暂无评论
堆排序(Heap Sort)只需要一个记录大小的辅助空间,每个待排序的记录仅占有一个存储空间。    (1)基本概念     a)堆:设有n个元素的序列:           {k1, k2, ..., kn}        对所有的i=1,2,...,(int)(n/2),当满足下面关系:             ...
阅读全文
2012-08-23 23:45 工业·编程 ⁄ 共 2114字 暂无评论
贪心方法:总是对当前的问题作最好的选择,也就是局部寻优。最后得到整体最优。 应用:1:该问题可以通过“局部寻优”逐步过渡到“整体最优”,这是贪心选择性质与“动态规划”的主要差别。 2:最优子结构性质:某个问题的整体最优解包含了“子”问题的最优解。 完整的代码如下: #include "iostream"  using namespace std;    struct goodinfo  {      float p; //物品效益 ...
阅读全文
2012-08-23 23:43 工业·编程 ⁄ 共 2283字 暂无评论
       全排列在很多程序都有应用,是一个很常见的算法,常规的算法是一种递归的算法,这种算法的得到基于以下的分析思路。  给定一个具有n个元素的集合(n>=1),要求输出这个集合中元素的所有可能的排列。         一、递归实现         例如,如果集合是{a,b,c},那么这个集合中元素的所有排列是{(a,b,c),(a,c...
阅读全文
        第一种是类成员中有成员是类对象,并且该成员的类含有默认构造函数,那么C++编译器会帮你给这个类也生成一个默认构造函数,用来调用其成员对象的构造函数,完成该成员的初始化构造。需要强调的是,如果这个成员的类也没有给出默认构造函数,那么C++编译器也不会帮你生成该类的默认构造函数。         第二种情况是这个类的基类有默认构造函数。...
阅读全文
2012-08-23 23:38 工业·编程 ⁄ 共 1708字 暂无评论
问题:有一个大小为n的数组A[0,1,2,…,n-1],求其中第k大的数。 该问题是一个经典的问题,在《算法导论》中被作为单独的一节提出,而且其解决方法很好的利用了分治的思想,将时间复杂度控制在了O(n),这多少出乎我们的意料,此处暂且不表。 该问题还可以变形为:有一个大小为 n的数组A[0,1,2,…,n-1],求其中前k大的数。 一字之差,原问题是“第k大”,变形的问题是“前k大”,但是平均时间复杂度却都可以控制在O(n),这不由得让人暗...
阅读全文
2012-08-23 23:37 工业·编程 ⁄ 共 1458字 暂无评论
方法一: #include "stdio.h"  #include "stdlib.h"    //初始化最大值为a[0],次大值为a[1],遍历一次,每次比较并更新最大值和次大值,最后就可以得到次大值。  int findsecondmaxvalue(int *a,int size)  {      int i,max,s_max;      max=a[0];  //最大值      s_max=a[1];  //次大值   &...
阅读全文
2012-08-23 23:10 工业·编程 ⁄ 共 1128字 评论 1 条
将窗体置顶的方法有: //将窗体置顶的API函数 ::SetWindowPos(m_hWndTop,HWND_TOPMOST,0,0,0,0,SWP_NOMOVE|SWP_NOSIZE); //MFC pDlg->SetWindowPos(&CWnd::wndTopMost,0,0,0,0,SWP_NOMOVE|SWP_NOSIZE); 说明: &CWnd::wndTopMost 是当前的最顶层窗口,调用函数,会把m_hWndTop或pDlg 置于&CWnd::wndTopMost上面自然就变成了最顶层 &CWnd::wndTopMost 是个静态成员变量 不知是本主程序的还...
阅读全文
2012-08-23 22:56 工业·编程 ⁄ 共 3323字 暂无评论
第一种方法:使用SetWindowPos函数 CWnd::SetWindowPosBOOL   SetWindowPos(   const   CWnd*   pWndInsertAfter,   int   x,   int   y,   int   cx,   int   cy,UINT   nFlags   );   返回值如果函数成功,则返回非零值;否则返回0。 说明     调用这...
阅读全文
CDC 所有设备环境类的基类,对GDI 的所有绘图函数进行了封装;可用来直接访问整个显示器或非显示设备(如打印机等)的上下文 CPaintDC CPaintDC 用于响应窗口重绘消息(WM_PAINT)的绘图输出,不仅可对客户区进行操作,还可以对非客户区进行操作 CClientDC 代表窗口客户区的设备环境,一般在响应非窗口消息并对客户区绘图时要用到该类 CWindowDC 代表整个窗口的设备环境,包括客户区和非客户区;除非要自己绘制窗口边框和...
阅读全文
2012-08-23 21:43 工业·编程 ⁄ 共 712字 暂无评论
    链表本身是一个数据结构,清空是把链表中的元素清空,但链表还存在,销毁则是把链表这个结构的内存都释放了。。     清空是链表没节点,但是链表还在,可以继续插入节点。销毁就是链表没了,整个链表的空间都被释放了,不能进行任何操作了。     就像一个杯子,把杯子里的水倒掉叫清空,把杯子砸碎叫销毁。。     清空链表与销毁链表的代码如下: #include &q...
阅读全文