1.宏定义.常量定义#define MATH_PI 3.14void defineH() { //
宏在编译阶段就把宏对应的常量给替换了,所以很快; printf("%f", MATH_PI);}.方法定义//
定义宏方法,宏方法没有具体的返回类型;当多行的时候,在后面添加一个反斜杠;#...
分类:
编程语言 时间:
2014-05-12 11:00:51
阅读次数:
341
原文第21章 策略模式(Strategy Pattern)策略模式
导读:策略模式看完之后,大多数人都会感觉有点混了,包括我,感觉策略模式是一种OO思想的体现(纯属个人拙见)。 概述:
策略模式定义了一系列的算法,并将每一个算法封装起来,而且使它们还可以相互替换。策略模式让算法独立于使用它的客户.....
分类:
其他好文 时间:
2014-05-12 08:39:21
阅读次数:
278
STL库中实现了nth_element函数,实现的功能是 “返回n个元素中的第k小的元素”。
首先,头脑风暴一下“返回n个元素中的第k小的元素”的算法:
1
排序 ,首选快排 O(n*logn),取出第k个即可。
2
其次,是维护一个大小为k的数组,找出数组中的最大值kmax,然后依次遍历剩下的 n-k 个元素,如果小雨kmax,则替换掉kmax
元素,然后再...
分类:
其他好文 时间:
2014-05-11 07:35:46
阅读次数:
250
挺有意思的一道题目,属于我之前没有总结到的情况,他在修改数组的时候用到了第三个指针。
如果是两种颜色的话,大家肯定都会做,直接一头一尾两个指针,扫描到不属于自己同类的就互换。这个题有了第三者,怎样来解决这个问题呢?想一下在一个数组中,怎样才能做到线性时间的修改,必须一次性或者常数性的把当前元素替换到他最终应该待的位置,要么复杂就上去了。那当前元素应该呆在那里呢?如果是0的话,应该呆在数组前面都是...
分类:
其他好文 时间:
2014-05-11 06:44:31
阅读次数:
259
最近在学习设计模式方面的知识,首先接触到的是设计模式中的六大设计原则: 1.单一职责原则;
2.里氏替换原则;3.依赖倒置原则;4.接口隔离原则;5.迪米特法则;开闭原则。下面我来讲讲我对这六大设计自己的理解,如有欠缺地地方,请大家及时指出啊。。。
1.单一职责原则:应该有且仅有一个原因引起类的变更。通俗的说,即一个类只负责一项职责。下面我们举一个具体的例子来说明一下什么是...
分类:
其他好文 时间:
2014-05-11 03:23:19
阅读次数:
659
一、概念
策略模式(Strategy):它定义了一系列的算法,并将每一个算法封装起来,而且使它们还可以相互替换。策略模式让算法的变化不会影响到使用算法的客户。(原文:The
Strategy Pattern defines a family of algorithms,encapsulates ea...
分类:
其他好文 时间:
2014-05-10 06:27:07
阅读次数:
431
正则表达式测试程序
使用正则表达式提可以使我们灵活而又高效的处理文本。
正则表达式的全面模式匹配表示法可以使我们快速地分析大量的文本以找到特定的字符模式;提取、编辑、替换或删除文本子字符串;或将提取的字符串添加到集合以生成报告。
如果你对正则表达式还不了解,你可以看看以前发表的文章,有许多关于正则表达式入门的文章,本文不对正则表达式的使用进行介绍。本文主要给出了我自己做的一个正则表达式的测试...
分类:
其他好文 时间:
2014-05-10 03:29:02
阅读次数:
318
数组和指针的区别2010-04-07 17:32:40分类:C/C++
C++/C程序中,指针和数组在不少地方可以相互替换着用,让人产生一种错觉,以为两者是等价的。数组要么在静态存储区被创建(如全局数组),要么在栈上被创建。数组名对应着(而不是指向)一块内存,其地址与容量在生命期内保持不变,只有数组...
分类:
其他好文 时间:
2014-05-10 03:21:20
阅读次数:
278
新的测试版修复了若干问题,建议下载了旧测试版的用户更新。修复的问题列表:替换PDF文档字体可能将字体宽度变成0。书签编辑器在加载XML书签时不显示对应文档的预览。自动生成书签功能复制文本筛选器后两个项目共享同一个文本筛选器。
分类:
其他好文 时间:
2014-05-10 02:30:38
阅读次数:
230