- 博客(6)
- 资源 (3)
- 收藏
- 关注
原创 在代码里设置程序的图标
最近在学习罗云彬大侠的win32汇编教程,顺便把windows的api和消息机制也好好学习了下。在学习"图标和光标"一节时遇到了一些问题,这里将主要实验步骤和结果列出,供后来者参考。一、实验前的准备 1、代码文件icon.cpp的内容:#include LRESULT CALLBACK WndProc (HWND hWnd, UINT uMsg, WPARAM
2013-06-25 10:29:22 11108 4
原创 精确覆盖问题学习笔记(五)——优化算法的实现代码
//文件node.h#pragma oncestruct CNode{ CNode* Left; //左节点指针 CNode* Right; //右节点指针 CNode* Up; //上节点指针,对列节点,则为本列最后一个元素的指针 CNode* Down; //下节点指针,对列节点,则为本列第一个元素的指针 int name;
2013-06-18 07:24:01 2067
原创 精确覆盖问题学习笔记(四)——算法优化
一、可优化的地方 上一节实现的代码从运行效率上看,有两个重大缺陷:1、每次递归调用前,需要将当前的状态矩阵拷贝一份,然后删除和当前行相交的所有行和列,得到新的矩阵,当矩阵非常大时,拷贝操作所需的时间和空间都很大。2、在实际情况中,矩阵M一般是稀疏矩阵,0的个数远远多于1的个数,如果我们能只处理含1的单元格的话,将大大提高运行的时空效率。二、优化所用到的数据结构 以下
2013-06-18 07:06:33 2316
原创 精确覆盖问题学习笔记(三)——算法的初步实现
一、类CExactCoverSolution的声明#include#include#include #include using namespace std;//类型的定义typedef int ELEMENT_TYPE;typedef char SUBSET_NAME; typedef vector ROW;typedef vector MATRIX;
2013-06-13 09:15:36 1897
原创 精确覆盖问题学习笔记(二)——基本算法
一、算法的主要流程有了子集的矩阵表达形式之后,我们就可以用Knuth发明的X算法来求出精确覆盖问题的解。(如果你在研究算法,但是没听过knuth的名字并且你又不是计算机的天才的话,请在阅读完本文后立刻去拜读Knuth的大作,呵呵)。这个递归算法(设算法函数的名字为search)的主要流程是1、设置一个子集编号集合S,用来存储本次得到的部分解。开始时S为空。2、判断当前矩阵M是否为空
2013-06-11 23:23:34 1720
原创 精确覆盖问题的回溯算法(一)——问题描述
一、问题描述精确覆盖问题(Exact Cover Problem),是指给定了一个全集S以及它的m个子集S1、S2、..Sm以后,要求出一组子集,使这组子集的并等于原来的全集S,且各子集两两不交。例:设S={1,2,3,4,5,6,7},A={1,4,7},B={1,4},C={4,5,7},D={3,5,6},E={2,3,6,7},F={2,7}则子集组
2013-06-11 17:51:18 3375 1
prolog 99道编程习题参考解答
2024-02-08
haskell 编程练习99题参考答案 (2024年1月28日完成,第1版)
2024-01-28
计算机系统要素各章大作业参考答案
2018-04-22
PL0编译器词法检查与语法分析器
2013-02-28
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人