- 博客(6)
- 资源 (3)
- 收藏
- 关注
原创 巧用位操作
利用位操作实现字符串逆序:利用两个指示器,一个定在最左边,一个定在最右边,两个指示器同时向相反方向移动,并互相交换,直到两者相遇,算法结束。分析:该算法的时间复杂度为o(n/2)~o(n),空间复杂度为o(1)源程序代码:#include "stdio.h"#include "string.h"void invert_point(char *str){ int i,j;
2012-11-24 11:08:43 381
原创 快速排序(Quick-Sort)
快速排序的主要思想是根据一个基准数(一般是待排序集中第一个元素)将一个待排序集分成左右两部分,其中左半部分数据集比右半部分数据集均要小或大,接下来,对左和右半部分按照相同的方法分别再划分成左右两部分,一直到左右两部分只剩下一个元素时,递归结束。分析:快速排序的时间复杂度为o(nlogn),空间复杂度为o(1),该算法是一个不稳定的排序算法(当基准元素与相同值进行交换时会破坏稳定性)。附源程
2012-11-24 10:40:02 454
原创 递归巧用
一条语句实现输出从i到n,再从n到i:主要思想是运用递归的方法,然而递归最原始的存储结构是栈,也就是先进后出的思想。然而,本题正是先进后出。附源代码:#include int p(int i,int N){ return printf("%d\n",i)&&i //printf()//返回值为输出结果的字符个数}int main(void){ p(0,3
2012-11-24 10:07:30 334
原创 数据库连接池
问题的提出:由于数据库的连接是一个有限的昂贵的资源,特别是在一些并发用户访问的网站上,要想提高程序的性能,必须对数据库连接的进行合理的管理。解决方法:采用数据库连接池的方式解决以上问题。数据库连接池主要负责分配、管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而再不是重新建立一个。在应用程序初始化时,将数据库连接作为对象存储在内存中,当用户需要访问数据库时,并非建立一个新的连
2012-11-21 16:11:16 456
转载 3月不晒被子滋生600万螨虫
“3月不晒被,600万螨虫陪你睡!”近日,一则据称源于英国金斯顿大学的研究报告,让众多微博网友“毛骨悚然”。而晒完被子后的所谓“太阳味儿”,也被这份报告煞风景地解释为“螨虫被烤熟”的味道。 昨日,据实验调查,家居用品螨虫滋生排行榜前三名分别为棉被、沙发坐垫、枕头。但成都冬日阳光少怎么办?别担心,专家说任何可见光都可杀死螨虫。 权威实验 用了1个月 棉被含螨虫上百万条 实验者
2012-11-19 19:25:16 825
原创 计数排序(Counting-Sort)
计数排序的思想是在一个预排序的整数集中,统计每一个整数在这个整数集中小于等于本身的整数个数,这样的话,就得到了预排序整数集中每个数的在已排序集中的位置,然后将预排序集与预排序集所处的位置对应起来,每次已排序一个,则将该计数减一(原因是存在相同的整数)。例如:已知预排序集A={0,2,4,2,3,4},可知最大数为4,则可以申请空间为4的数组C和C'。step1:统计每个数的个数
2012-11-15 15:51:22 907 1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人