- 博客(11)
- 资源 (1)
- 收藏
- 关注
原创 双向划分的快速排序
void quictSort(int arr[],int l,int u){ if(l >= u) return; int t = arr[l]; int i = l; int j = u+1; for(;;) { do i++;while(i <= u && arr[i] < t); do j--;while(arr[j] > t); if(i
2009-09-28 14:12:00 980
原创 do-while语句
do-while语句的一般形式是:do{/*....*/}while(...); 如果do代码块只有一个语句,可以这样写:do i++;while(x[i] do-while语句即使一开始while条件即为假,do语句也会执行一次.
2009-09-28 11:11:00 538
原创 Effective C++读书笔记--Item 2:使用const,enum和template inline函数代替宏
这个Item主要针对C程序员。 一、对于单纯常量,最好以const对象或者enums替换#define;二、对于形似函数的宏,最好用inline函数替换#define. 注意:1、什么是the enum hack?在类中定义static类型时编译器不允许赋初值(只能声明),但是你确实要在类中使用该值时,可以用enum代替static。有一个理论基础:一个属于枚举类型
2009-09-26 16:11:00 952
原创 Effective C++读书笔记--Item 1:从四个语言层次理解C++
可以将C++理解成由四个子语言组成:C、Object-Oriented C++、Template C++、STL。 C: 代码块 语句 数组 指针 内置数据类型 预处理器 Object-Oriented C++: 类(构造函数、析构函数、copy构造函数、copy assignment) 封装 继承 多态 virt
2009-09-26 15:44:00 641
原创 二维数组作函数参数及返回值
需要将二维数组作为函数参数传递进函数里处理,处理完毕后要将二维数组作为函数返回值返回。函数是不能返回数组的,只能返回指针。代码可以这样写:typedef char(*aa)[10];aa sign(char signstr[][10]){ for(int i = 0;i != 6;++i) { qsort(signstr[i],strlen(signstr[i]),si
2009-09-22 15:23:00 9041 1
原创 求最大公因子
最大公因子 最大公因子(greatest common divisor,简写为gcd;或highest common factor,简写为hcf),指某几个整数共有因子中最大的一个。 两个整数的最大公因子主要有两种寻找方法: * 两数各分解质因子,然后取出同样有的项乘起来 * 辗转相除法(扩展版) 和最小公倍数(lcm)的关系:gcd(a, b)×lcm(a, b) = ab
2009-09-21 21:25:00 4026
原创 数组循环移动代码,只使用一个临时变量
算法原理:假如要将数组循环左移i位,则先将数组前i位逆置,再将后n-i位逆置,最后将整个数组逆置。逆置也有小技巧:使用两个游标start、end,将子数组的第一个元素和子数组的最后一个元素交换,然后start++,end--。#includeusing namespace std;void reverse(char *ch,int start,int end){ wh
2009-09-21 18:43:00 1028
原创 google app engine简明教程---Python版
1、安装Python。目前google app engine上的python版本是2.5,所以我们也应该装2.5,可保证无错。python的安装很简单,到www.python.org上去下载对应版本即可。装完如果安装程序没有将python的根目录添加到系统环境变量,手动加上去。测试方法:在控制台上输python(windows平台的啊),如果提示“python不是内部或者外部命令”,就是环境变量没
2009-09-17 11:10:00 7985
原创 C++产生随机数的方法
c++产生随机数的函数是rand(),它没有参数,返回o至RAND_MAX之间的随机整数(其实是伪随机)。RAND_MAX是系统定义的一个宏(?),我在VS2005上测试的结果显示RAND_MAX应该是一个五位数。如果要自定义一个随机数,可以用参数指定随机数的范围,可以这样定义: double random(double start,double end){ return
2009-09-17 11:09:00 1171 2
原创 位图排序法
位图排序法有两个限制条件: 1、待排序数据都在一个已知的相对较小的范围内; 2、所有数据没有重复; 位图排序法思想:假设待排序的所有数都小于1000万,那么使用一个具有1000万个位的字符串来表示这个待排序文件,其中,当且仅当整数i在文件中存在时,第i位置为1.具体实现是,定义一个整形数组,如 int order[10000000];然后将i作为数组下标将order[i]=1;最后再做个循环检查如
2009-09-17 11:04:00 658
原创 什么是内联函数?
内联函数的定义很简单,就是在一般的函数定义前面加上inline关键字。理解内联函数要把握的几点:1、函数的一大功能就是代码重用。把某些代码写成函数,就是为了重用这个目的。一般将较短小的代码写成内联函数。2、但是将代码写成函数有个缺点,就是开销增大了。几条顺序执行的代码如果封成函数,那么需要增加额外开销如:用前要先保存寄存器,并在返回时恢复;复制实参;程序还必须转向一个新位置执行。3、把
2009-09-01 11:26:00 938
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人