ソート用にこのコードを作成しましたが、完全に正常に動作します。時間の複雑さを軽減する方法を知りたかったのです。
#include <iostream>
using namespace std;
void sort(int a[], int n)
{
int min, temp;
for(int i=0;i<n-1;i++)
{
min=i;
for(int j=i+1;j<n;j++)
{
if(a[min]>a[j])
{
min=j;
}
}
temp=a[i];
a[i]=a[min];
a[min]=temp;
}
for(int i=0;i<n;i++)
{
cout<<a[i]<<endl;
}
}
int main()
{
int n;
cin>>n;
int arr[n];
for(int i=0;i<n;i++)
{
cin>>arr[i];
}
sort(arr,n);
return 0;
}
他に変更する方法がない場合、アルゴリズムを変更する必要がありますか? もしそうなら、アルゴリズムを提案してください。
ありがとう。