C语言简单选择排序代码
时间: 2023-11-16 11:57:08 浏览: 61
以下是C语言简单选择排序的代码实现:
```
void selectSort(int data[]) {
int i,j,min;
for(i=1;i<data[0];i++) {
min=i;
for(j=i+1;j<=data[0];j++) {//循环比较找出最小的位置
if(data[min]>data[j]) min=j;
}
if(i!=min) {//交换位置
int mid;
mid=data[i];
data[i]=data[min];
data[min]=mid;
}
}
}
```
该代码实现了简单选择排序的算法,其中`data`为待排序的数组,`data`存储了数组的长度。在排序过程中,首先从数组中选择最小的元素,将其与数组的第一个元素交换位置,然后在剩余的元素中选择最小的元素,将其与数组的第二个元素交换位置,以此类推,直到整个数组有序。
相关问题
c语言实现选择排序代码
选择排序(Selection sort)是一种简单直观的排序算法,其基本思想是:首先在未排序的数列中找到最小元素,然后将其存放到数列的起始位置;接着从剩余未排序的元素中继续寻找最小的元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。
以下是C语言实现选择排序的代码:
```
#include <stdio.h>
void selection_sort(int arr[], int n)
{
int i, j, min_idx;
for (i = 0; i < n-1; i++)
{
min_idx = i;
for (j = i+1; j < n; j++)
if (arr[j] < arr[min_idx])
min_idx = j;
int temp = arr[min_idx];
arr[min_idx] = arr[i];
arr[i] = temp;
}
}
int main()
{
int arr[] = {64, 25, 12, 22, 11};
int n = sizeof(arr)/sizeof(arr);
selection_sort(arr, n);
printf("Sorted array: \n");
for (int i=0; i < n; i++)
printf("%d ", arr[i]);
return 0;
}
```
c语言选择法排序代码
选择法排序是一种简单的排序算法,其基本思想是从待排序的数据元素中选择最小(或最大)的一个元素作为首元素,再从剩余的元素中选择最小(或最大)的元素作为次首元素,以此类推,直到所有元素排序完毕。下面是三个不同来源的C语言选择法排序代码:
引用中的代码:
void selectSort(int arr[],int n) //定义选择法排序
{
int i,j,k,t;
for(i=0;i<n-1;i++)
{
k=i;
for(j=i+1;j<n;j++)
if(arr[j]<arr[k]) //比较两个数的大小
k=j; //把最小元素的序号保存在K中
if(k!=i) //如果K值有改变
{
t=arr[k];
arr[k]=arr[i];
arr[i]=t;
} //交换两个数
}
}
引用中的代码:
int main(void)
{
int a[10]={6,1,4,5,7,8,9,2,3,10};
int i,k,pos;
for(i=0;i<10;i++)
{
pos=i;
for(k=i+1;k<10;k++)
{
if(a[k]<a[pos])
{
pos=k;
}
}
if(pos!=i)
{
int c;
c=a[i];
a[i]=a[pos];
a[pos]=c;
}
}
for(i=0;i<10;i++)
{
printf("%d ",a[i]);
}
}
引用中的代码:
void selectSort( int data[] ,int n )
{
int i,j;
int min = 0;
for(i=0;i<n-1;i++)
{
min = i;
for(j=i+1;j<n;j++)
{
if(data[min]>data[j])
{
min = j;
}
}
int temp = data[min];
data[min] = data[i];
data[i] = temp;
}
for(i=0;i<n;i++)
{
printf("%d ",data[i]);
}
}
以上三个代码的基本思路都是一样的,只是实现方式略有不同。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![c](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)