您的位置:首页 > 理论基础 > 数据结构算法

初学数据结构---简单选择排序

2017-06-13 20:12 323 查看
// 选择排序.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"
#include <iostream>
using namespace std;

const int MAXSIZE = 50;
typedef int KeyType;
typedef struct
{
KeyType key;
}DataType;

typedef struct
{
DataType data[MAXSIZE];
int length;
}SqList;

//简单选择排序
void SelectSort(SqList *L, int n)
{
int i, j, k;
DataType t;
for(i = 1;i < n;i++)
{
j = i;
for(k = i + 1;k <= n;k++)
{
if(L->data[k].key < L->data[j].key)
{
j = k;
}
}
if(j != i)
{
t = L->data[i];
L->data[i] = L->data[j];
L->data[j] = t;
}
}
}

void DispList(SqList L,int n)
{
int i;
for(i = 1;i <= n;i++)
cout << L.data[i].key << " ";
cout << endl;
}
int main()
{
DataType a[] = { 55,22,66,33,59,12,88,26,48,37 };
int i, n = 10;
SqList L;
for(i = 1;i <= n;i++)
{
L.data[i] = a[i-1];
}
L.length = n;
SelectSort(&L, n);
cout << "排序后:" << endl;
DispList(L, n);
system("pause");
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  数据结构 算法 博客