随笔分类 - 总结
摘要:在写C++程序中最怕的一问题应是,程序在debug下可以正确无误的运行而在release模式下却发生内存访问的错误。最近就遇到了一个因数组引起的栈溢出问题,费了好长时间才发现。 用VS2005写程序,默认的栈大小是1M。我们在程序中的变量及静态数组都是储存在栈中的。一旦变量和静态数组的规模超过了栈的大小,就会发生栈溢出错误。如运行如下一段代码是无法成功的:#pragma once#include <iostream>using namespace std;int main() { int a[1024*256]; cerr<<"It works"&l
阅读全文
摘要:如下demo是可以的,能把数组中的元素值都设置成字符1,#include <iostream>#include <cstring>using namespace std;int main(){ char a[5]; memset(a,'1',5); for(int i = 0;i < 5;i++) cout<<a[i]<<" "; system("pause"); return 0;}而,如下程序想吧数组中的元素值设置成1,却是不可行的#include <iostream>
阅读全文
摘要:1、输出double类型时,如果采用G++提交,scanf采用%lf,prinf采用%f,否则会报错2、使用GCC/G++的提醒:对于64位整数, long long int 和 __int64 都是支持并且等价的.但是在读和写的时候只支持scanf("%I64d", ...)和printf("%I64d", ...).不支持"%lld"是因为MinGW下的GCC和G++使用的msvcrt.dll...
阅读全文
摘要:以下内容转载自此位牛人的博客:http://www.byvoid.com/blog/match-km/有关KM算法的基本内容可参考百度百科或者tianyi的讲解.[二分图带权匹配与最佳匹配]什么是二分图的带权匹配?二分图的带权匹配就是求出一个匹配集合,使得集合中边的权值之和最大或最小。而二分图的最佳匹配则一定为完备匹配,在此基础上,才要求匹配的边权值之和最大或最小。二分图的带权匹配与最佳匹配不等价...
阅读全文
摘要:以下内容转自http://imlazy.ycool.com/post.1603708.html什么是二分图,什么是二分图的最大匹配,这些定义我就不讲了,网上随便都找得到。二分图的最大匹配有两种求法,第一种是最大流(我在此假设读者已有网络流的知识);第二种就是我现在要讲的匈牙利算法。这个算法说白了就是最大流的算法,但是它跟据二分图匹配这个问题的特点,把最大流算法做了简化,提高了效率。匈牙利算法其实很...
阅读全文
摘要:有时要在程序中设置一个大的整数表示正的无穷大,熟悉PASCAL的人都知道有两个经常用到的符号常量叫MAXINT和MAXLONGINT。C++中该怎么办呢?其实在头文件limits中有关于各种整型常量的取值范围和最大整型和最小整型的定义。例如, | signed | unsigned ----------------------------------------------------------...
阅读全文
浙公网安备 33010602011771号