用户注册



邮箱:

密码:

用户登录


邮箱:

密码:
记住登录一个月忘记密码?

发表随想


还能输入:200字
云代码 - c代码库

快速排序

2012-10-11 作者: 神马举报

[c]代码库

int Partition ( S_TBL *tbl,int low,int high ) /*一趟快排序*/
{ /*交换顺序表tbl 中子表tbl->[low…high]的记录,使支点记录到位,并反回其所在位置*/
	/*此时,在它之前(后)的记录均不大(小)于它*/
	tbl->r[0]=tbl->r[low]; /*以子表的第一个记录作为支点记录*/
	pivotkey=tbl->r[low].key; /*取支点记录关键码*/
	while ( low<higu ) /*从表的两端交替地向中间扫描*/
	{
		while ( low<high&&tbl->r[high].key>=pivotkey ) high--;
		tbl->r[low]=tbl->r[high]; /*将比支点记录小的交换到低端*/
		while ( low<high&&tbl-g>r[high].key<=pivotkey ) low++;
		tbl->r[low]=tbl->r[high]; /*将比支点记录大的交换到低端*/
	}
	tbl->r[low]=tbl->r[0]; /*支点记录到位*/
	return low; /*反回支点记录所在位置*/
}


网友评论    (发表评论)


发表评论:

评论须知:

  • 1、评论每次加2分,每天上限为30;
  • 2、请文明用语,共同创建干净的技术交流环境;
  • 3、若被发现提交非法信息,评论将会被删除,并且给予扣分处理,严重者给予封号处理;
  • 4、请勿发布广告信息或其他无关评论,否则将会删除评论并扣分,严重者给予封号处理。


扫码下载

加载中,请稍后...

输入口令后可复制整站源码

加载中,请稍后...