摘要:
9.9.1快速排序介绍 终于我们的高手要登场了,如果将来你工作后,你的老板要让你写个排序算法,而你会的算法中竟然没有快速排序,我想你还是不要声张,偷偷去把快速排序算法找来敲进电脑,这样至少你不至于被大伙儿取笑。 事实上,不论是C++ STL、Java SDK或者.NET FrameWork SDK等开发工具包中的源代码里都能找到它的某种实现版本。 快速排序算法最早由图灵奖获得者Tony Hoare设计出来的,他在形式化方法理论,以及ALGOL60 编程语言的发明都有卓越的贡献,是上世纪最伟大的计算机科学家之一。而这快速排序算法只是他众多贡献中的一个小发明而已。 更牛的是,我们现在要学习的这个快 阅读全文
摘要:
众所周知,每一个二维数组有n行个二级指针指向数组的每一行,每一行有m个一级指针指向数组的每一个元素。因此,我们动态分配二维数组只要分配n个二级指针,n*m个一级指针就行了,先来看一个常用的方法:int i,**p=(int**)malloc(row*sizeof(int)); for(i=0;i<row;i++) p[i]=(int*)malloc(column*sizeof(int)); 但这个方法每次分配指针时都要调用(void)malloc(int)函数,在分配上浪费了时间,因此可以做如下简化: int i,**p=(int**)malloc(row*sizeof(int)); p 阅读全文