0
点赞
收藏
分享

微信扫一扫

排序算法(冒泡、选择、插入)

1、冒泡排序

int k1 = 0, i, j;
double m,k2;
double a[100],b[100];


for (i = 0; i < k1; i++)                     //冒泡排序
{
	for (j = k1 - 1; j >i; j--)
	{
		if (a[j] < a[j - 1])
	    {
			m = a[j - 1];
			a[j - 1] = a[j];
			a[j] = m;
			k2 = b[j - 1];
			b[j - 1] = b[j];
			b[j] = k2;
		}
	}
}

2、选择排序

int k1 = 0, i, j;
double m,k2;
double a[100],b[100];

int po;
for (i = 0; i < k1-1; i++)                //选择排序
{
    m = a[i];
	po = i;
	for (j = i+1; j < k1; j++)
	{
		if (a[j] >m)
		{
			m = a[j];
			po = j;
		}
	}
	a[po] = a[i];
	a[i] = m;
	k2 = b[po];
	b[po] = b[i];
	b[i] = k2;
}

3、插入排序

int k1 = 0, i, j;
double m,k2;
double a[100],b[100];

for (i = 1; i < k1; i++)                         //插入排序
{
	m = a[i];
	k2 = b[i];
	j = i - 1;
	while ((j >= 0) && (m > a[j]))
	{
		a[j + 1] = a[j];
		b[j + 1] = b[j];
		j--;
	}
	a[j + 1] = m;
	b[j + 1] = k2;
}
举报

相关推荐

0 条评论