那些年&编程代码
文章平均质量分 70
JIANTAO_YI
磨成長為硯,記錄過往的歲月;化歲月成墨,書寫點滴的青春;執青春之筆,揮斥方遒的成長!
展开
-
ACM入门的方法
作为刚刚接触计算机信息学领域的同学,心里往往存在很多困惑,不知道从何入手学习,通过这篇文章,希望对各位有所帮助。一、语言是最重要的基本功无论侧重于什么方面,只要是通过计算机程序去最终实现的竞赛,语言都是大家要过的第一道关。亚洲赛区的比赛支持的语言包括C/C++与JAVA。首先说说JAVA,众所周知,作为面向对象的王牌语言,JAVA在大型工程的组织与安全性方面有着自己独特的优势,但是对于原创 2013-05-18 00:04:24 · 1175 阅读 · 0 评论 -
C/C++的64位整型 zz
//为了和DSP兼容,TSint64和TUint64设置成TSint40和TUint40一样的数//结果VC中还是认为是32位的,显然不合适//typedef signed long int TSint64;//typedef unsigned long int TUint64;//ANSI C中规定long long才能表示64位//参见:http://msdn.micr转载 2013-07-15 14:07:27 · 1880 阅读 · 0 评论 -
C语言格式化输出总结
这儿有ME参考文章的链接(⊙o⊙)哦printf()格式化输出详解小全printf的格式控制的完整格式: % - 0 m.n l或h 格式字符 下面对组成格式说明的各项加以说明: ①%:表示格式说明的起始符号,不可缺少。 ②-:有-表示左对齐输出,如省略表示右对齐输出。 ③0:有0表示指定空位填0,如省略表示指定空位不填。 ④m.n:m指域宽,即对应原创 2013-06-07 23:06:45 · 1257 阅读 · 0 评论 -
算法分析与设计之五大常用算法 (V)—— 分支限界法
基本描述类似于回溯法,也是一种在问题的解空间树T上搜索问题解的算法。但在一般情况下,分支限界法与回溯法的求解目标不同。回溯法的求解目标是找出T中满足约束条件的所有解,而分支限界法的求解目标则是找出满足约束条件的一个解,或是在满足约束条件的解中找出使某一目标函数值达到极大或极小的解,即在某种意义下的最优解。(1)分支搜索算法所谓“分支”就是采用广度优先的策略,依次搜索E-结点的所有分支,转载 2013-06-04 21:54:08 · 1387 阅读 · 0 评论 -
算法分析与设计之五大常用算法 (IV)—— 回溯算法
回溯法是一种选优搜索法,按选优条件向前搜索,以达到目标。但当探索到某一步时,发现原先选择并不优或达不到目标,就退回一步重新选择,这种走不通就退回再走的技术为回溯法,而满足回溯条件的某个状态的点称为“回溯点”。回溯法的一般描述可用回溯法求解的问题P,通常要能表达为:对于已知的由n元组(x1,x2,…,xn)组成的一个状态空间E={(x1,x2,…,xn)∣xi∈Si ,i=1,2,…,n},转载 2013-06-04 21:50:01 · 1217 阅读 · 0 评论 -
HDOJ 吃糖果
点击打开链接/*水题:最大的情况是:#^#%#^# (#,^,%表示糖果),比这种情况再多一粒就会No 这种情况x下x + x-1 = sum 所以: x = (sum + 1)/2。(sum为奇数)所以判断为No的条件为:max >= (sum + 1)/2 + 1*/#include int main(){ int t, n, a, max; __int64 s原创 2013-05-29 22:24:49 · 883 阅读 · 0 评论 -
算法分析与设计之五大常用算法 (III)—— 贪心算法
所谓贪心算法是指,在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,他所做出的仅是在某种意义上的局部最优解。贪心算法不是对所有问题都能得到整体最优解,但对范围相当广泛的许多问题他能产生整体最优解或者是整体最优解的近似解。贪心算法的基本思路如下:1.建立数学模型来描述问题。2.把求解的问题分成若干个子问题。3.对每一子问题求解,得到子问题的局部最优转载 2013-05-25 18:50:10 · 1134 阅读 · 0 评论 -
算法分析与设计之五大常用算法 (I) —— 分治算法
在计算机科学中,分治法是一种很重要的算法。字面上的解释是“分而治之”,就是把一个复杂的问题分成两个或更多的相同或相似的子问题,再把子问题分成更小的子问题……直到最后子问题可以简单的直接求解,原问题的解即子问题的解的合并。这个技巧是很多高效算法的基础,如排序算法(快速排序,归并排序),傅立叶变换(快速傅立叶变换)……任何一个可以用计算机求解的问题所需的计算时间都与其规模有关。问题的规模越小,越容转载 2013-05-25 18:47:14 · 889 阅读 · 0 评论 -
算法分析与设计之五大常用算法 (II)—— 动态规划算法
最优化原理1951年美国数学家R.Bellman等人,根据一类多阶段问题的特点,把多阶段决策问题变换为一系列互相联系的单阶段问题,然后逐个加以解决。一些静态模型,只要人为地引进“时间”因素,分成时段,就可以转化成多阶段的动态模型,用动态规划方法去处理。与此同时,他提出了解决这类问题的“最优化原理”(Principle of optimality):“一个过程的最优决策具有这样的性质:即无论转载 2013-05-25 18:48:27 · 811 阅读 · 0 评论 -
What Is Clean Code? – In Quotes
什么样的代码才是真正好的、整洁的代码?来看看大牛们怎么说。Bjarne Stroustrup,C++之父:引用我喜欢优雅、高效的代码:● 逻辑应该是清晰的,bug难以隐藏;●依赖最少,易于维护;●错误处理完全根据一个明确的策略;●性能接近最佳化,避免代码混乱和无原则的优化;●整洁的代码只做一件事。Grady Booch,《面向对象分析与设计》作者:引用转载 2013-05-18 23:12:28 · 1139 阅读 · 0 评论 -
散列表(哈希表)
我们知道数组能够提供对元素的快速访问但难于扩展;链表易于扩展但不能对其元素进行快速访问。对于大量元素的数据来说,我们当然希望两全其美。散列表提供了达到此目标的一种方法。 散列表又称哈希表,它有以下几个术语:1.关键字:元素的存储部分,数据库的元素通过它进行存储,查找等操作(也称作散列关键字)2,散列表元:散列数组的某个位置,其后跟着另外一个包含其元素的结构3,散列函转载 2013-10-09 12:06:13 · 1230 阅读 · 0 评论