(3〜4):Cは配列の選択とソートを実現します

3.並べ替えを選択します

#include<stdio.h>
#define N 10

int main()
{
    
    
    int arr[N]={
    
    1,-1,20,100,35,634,3,6,12,62};
    int t;
    for(int i=0;i<N-1;i++)
    {
    
    
        for(int j=i+1;j<N;j++)
        {
    
    
            if(arr[i]>arr[j])
            {
    
    
                t=arr[i];
                arr[i]=arr[j];
                arr[j]=t;
            }
        }
    }
    for(int i=0;i<10;i++)
    {
    
    
        printf("%d\n",arr[i]);
    }
    return 0;
}

ここに画像の説明を挿入します

4.選択ソートの改善:変更せずに比較し、添え字を書き留めるだけです

#include<stdio.h>
#define N 30

int main()
{
    
    
	int arr[N];
	for(int i=0; i<N; i++)
	{
    
    
		arr[i]=rand()%100;
	}
	for(int i=0; i<N-1; i++)
	{
    
    
		int idx=i;
		for(int j=i+1; j<N; j++)
		{
    
    
			if(arr[idx]>arr[j])
				idx=j;
		}
		if(idx!=i)
		{
    
    
			arr[idx]^=arr[i];
			arr[i]^=arr[idx];
			arr[idx]^=arr[i];
		}
	}
	for(int i=0; i<N; i++)
	{
    
    
		printf("%d\n",arr[i]);
	}
}

ここに画像の説明を挿入します
添付ファイル:C ^ナレッジポイントのXOR演算子
ここに画像の説明を挿入します

おすすめ

転載: blog.csdn.net/weixin_43297891/article/details/113833378