Welcome 微信登录

首页 / 软件开发 / C语言

c语言算法 - 贪婪算法 - 货箱装船

c语言算法 - 贪婪算法 - 货箱装船

c语言算法 - 贪婪算法 - 货箱装船2010-01-28这个问题来自例1 - 2。船可以分步装载,每步装一个货箱,且需要考虑装载哪一个货箱。根据这种思想可利用如下贪婪准则:从剩下的货箱中,选择重量最小的货箱。这种选择次序可以保证所选的货箱总重量最小,从而可以装载更多的货箱。根据这种贪婪策略,首先选择最轻的货箱,然后选次轻的货箱,如此下去直到所有货箱均装上船或船上不能再容纳其他任何一个货箱。例1-7 假设n=8, [w1 , ... w8]=[100,20...
c语言算法 - 贪婪算法 - 最小耗费生成树

c语言算法 - 贪婪算法 - 最小耗费生成树

c语言算法 - 贪婪算法 - 最小耗费生成树2010-01-28在例1-2及1-3中已考察过这个问题。因为具有n 个顶点的无向网络G的每个生成树刚好具有n-1条边,所以问题是用某种方法选择n-1条边使它们形成G的最小生成树。至少可以采用三种不同的贪婪策略来选择这n-1条边。这三种求解最小生成树的贪婪算法策略是: K r u s k a l算法,P r i m算法和S o l l i n算法。1.Kruskal算法(1) 算法思想K r u s k a l算...
c语言贪婪算法算法-算法思想

c语言贪婪算法算法-算法思想

c语言贪婪算法算法-算法思想2010-01-28在贪婪算法(greedy method)中采用逐步构造最优解的方法。在每个阶段,都作出一个看上去最优的决策(在一定的标准下)。决策一旦作出,就不可再更改。作出贪婪决策的依据称为贪婪准则(greedy criterion)。例1-4 [找零钱] 一个小孩买了价值少于1美元的糖,并将1美元的钱交给售货员。售货员希望用数目最少的硬币找给小孩。假设提供了数目不限的面值为2 5美分、1 0美分、5美分、及1美分的硬币。...
C语言实现QQ密码大盗

C语言实现QQ密码大盗

C语言实现QQ密码大盗2010-01-28余和均一般的盗密码的软件的软件都是通过监视键盘来获得密码,这样操作比较方便,但是这样也存在一定问题,密码有的时候不是很准确,因为有的人输入密码并不是从前到后输入,当然这样的人也是少数,盗密码嘛,当然去得到那些比较粗心的人的密码! 通过安装钩子来监视QQ登陆界面就是获得密码的方法,在安装前得先找到登陆窗口的句柄,当钩子安装后,记录键盘,当用户“回车”或是点了“登陆”就可...
C语言实现MATLAB 6.5中M文件的方法

C语言实现MATLAB 6.5中M文件的方法

C语言实现MATLAB 6.5中M文件的方法2010-01-28 计算机信息技术 宋威众所周知,MATLAB是一个功能强大的数学软件,擅长于用矩阵运算完成各种数学功能。但是其程序需要在MATLAB环境下解释执行,效率不高。如果能将它强大的函数库用于C语言,利用C来编译执行,MATLAB将能发挥更大的作用。所以,MATLAB从5.0开始已经提供了与外部C/C++程序的应用程序接口,为利用C语言调用MATLAB的函数提供了可能。但是MATLAB的接口发展很快,...
C语言的extern声明辨析

C语言的extern声明辨析

C语言的extern声明辨析2010-01-281 基本解释extern可以置于变量或者函数前,以标示变量或者函数的定义在别的文件中,提示编译器遇到此变量和函数时在其他模块中寻找其定义。另外,extern也可用来进行链接指定。2 问题:extern 变量在一个源文件里定义了一个数组:char a[6];在另外一个文件里用下列语句进行了声明:extern char *a;请问,这样可以吗?答案与分析:1)、不可以,程序运行时会告诉你非法访问。原因在于,指向类...
再谈C语言中数组和指针之间的互操作

再谈C语言中数组和指针之间的互操作

再谈C语言中数组和指针之间的互操作2010-01-28张桂权我曾说过,在C语言中只有一维的数组(这是我对数组的看法),而且数组元素可以是任何类型的数据(或对象),自然也可以是另外的一个数组(因为数组也是一种数据类型)。所以如果你坚持要说有多维数组,那也不是不可能的事情。我们只要把一个数组赋值给另一个数组的元素就可以了。当然了,我们必须保证在程序编译期数组的大小是一个固定的常数。其实,数组的操作很简单的。只要我们确定一个数组的大小和指向该数组下标为0的元素的...
用C语言实现常见的三种中文内码转换

用C语言实现常见的三种中文内码转换

用C语言实现常见的三种中文内码转换2010-01-28常见的中文内码一般有GB2312(简体中文),GBK和台湾那边用的BIG5(繁体中文),有时候看一些台湾编程论坛里的资料,都是乱码,如果在IE中浏览,则要求安装繁体字库的支持。网上也有很多中文内码的转换工具,什么专家,大师,巨匠之类所有光辉灿烂的名字都被使用了,但是在自己的程序中集成这些功能岂不是更好。以前曾广泛流传过使用码表来转换中文内码的Code,但毕竟不完美,而且还要携带或内置一个巨大的表,浪费资...
C语言之static辨析

C语言之static辨析

C语言之static辨析2010-01-281、概述static声明的变量在C语言中有两方面的特征:1)、变量会被放在程序的全局存储区中,这样可以在下一次调用的时候还可以保持原来的赋值。这一点是它与堆栈变量和堆变量的区别。2)、变量用static告知编译器,自己仅仅在变量的作用范围内可见。这一点是它与全局变量的区别。2、问题:Static的理解关于static变量,请选择下面所有说法正确的内容:A、若全局变量仅在单个C文件中访问,则可以将这个变量修改为静态...
C语言中正确使用const

C语言中正确使用const

C语言中正确使用const2010-01-28基本解释const是一个C语言的关键字,它限定一个变量不允许被改变。使用const在一定程度上可以提高程序的健壮性,另外,在观看别人代码的时候,清晰理解const所起的作用,对理解对方的程序也有一些帮助。虽然这听起来很简单,但实际上,const的使用也是c语言中一个比较微妙的地方,微妙在何处呢?请看下面几个问题。问题:const变量 & 常量为什么我象下面的例子一样用一个const变量来初始化数组,AN...
如何学习C语言

如何学习C语言

如何学习C语言2010-01-28谭浩宇学习C语言不是一朝一夕的事情,但也不需要花费十年时间才能精通。如何以最小的代价学习并精通C语言是本文的主题。请注意,即使是“最小的代价”,也绝不是什么捷径,而是以最短的时间取得最多的收获,同时也意味着你需要经历艰苦的过程。一、要读就读好书,否则不如不读所有初学者面临的第一个问题便是:如何选择教材。好的开始是成功的一半,选择一本优秀的教材是事半功倍的关键因素。不幸的是,学校通常会帮你指定一本很差...
<< 41 42 43 44 45 46 47 48 49 50 >>