网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

数据结构的一些算法实现-创新互联

文章目录
  • 快速排序
  • 插入排序
  • 选择排序
  • 希尔排序
  • 二分查找

成都创新互联公司,为您提供成都网站建设成都网站制作、网站营销推广、网站开发设计,对服务成都石牌坊等多个行业拥有丰富的网站建设及推广经验。成都创新互联公司网站建设公司成立于2013年,提供专业网站制作报价服务,我们深知市场的竞争激烈,认真对待每位客户,为客户提供赏心悦目的作品。 与客户共同发展进步,是我们永远的责任!快速排序
void CQuickSort::quickSort( int *p_val, int size )
{int t_baseNumber = *p_val;//枢轴数
	int* head = p_val;
	int* tail = p_val + size-1;
	int temp = 0;
	if (size<= 0)
	{return;
	}
	while (head != tail)
	{if (*head >*tail)//后面的数 小于枢轴数时 就进行交换
		{	temp = *head;
			*head = *tail;
			*tail = temp;
		}
		if (*head == t_baseNumber)//每次对比的数都是枢轴数 所以应该拿枢轴数来比较
		{	tail--;
		}
		else
		{	head++;
		}
	}
	quickSort(p_val, head - p_val);
	quickSort(head+1, size -(head-p_val+1));
}
插入排序
void CInsertSort::insertSort( int *p_val, int size )
{int temp = 0;
	for (int index=1; index<= size -1; index++)//外层的循环控制用来排序的数有多少个
	{for (int number= index; number >= 1; number--)//内层循环用来从后往前逐个对比,交换顺序
		{	if (p_val[number]< p_val[number-1])
			{		temp = p_val[number];
				p_val[number] = p_val[number-1];
				p_val[number-1] = temp;
			}
			else
			{		break;
			}
		}
	}
}
选择排序
void CThreadAndAlgorithm::choice_sort( int *p_val, int size )
{int temp=0;
	for (int i=size-1; i >= 1; i--)
	{for (int j=0; j< i-1; j++)
		{	if (p_val[j] >p_val[i])
			{		temp = p_val[i];
				p_val[i] = p_val[j];
				p_val[j] = temp;
			}
		}
	}

}
希尔排序
void CThreadAndAlgorithm::shellSort( int *p_val, int size )
{int tmp = 0;
	int step = size/2;
	while (step)
	{for (int i=step; i	tmp = p_val[i];
			int j=i;
			while (j >= step && tmp		p_val[j]= p_val[j-step];
				j -= step;
			}
			p_val[j] = tmp;
		}
		step = step/2;
	}
}
二分查找
int CThreadAndAlgorithm::binarySearch( int *p_val, int size, int val )
{int* p_head = p_val;
	int low =0;
	int middle =0;
	int height = size;
	while(low< height)
	{middle = (low + height)/2;
		if (p_val[middle] == val)
		{	return middle;
		}
		else if (p_val[middle] >val)
		{	height = middle - 1;
		}
		else if (p_val[middle]< val)
		{	low = middle + 1;
		}
	}
	return -1;
}

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


网站题目:数据结构的一些算法实现-创新互联
分享URL:http://bjjierui.cn/article/eesdi.html

其他资讯