第29214题 单选题
以下C++代码片段中,能正确实现整数数组升序选择排序算法的是?

假设arr为待排序的整数数组,n为数组元素个数,swap为标准交换函数

A

void selectSort(int arr[], int n) { for(int i=0; i<n; i++){ int minIdx = 0; for(int j=1; j<n; j++){ if(arr[j] < arr[minIdx]) minIdx = j; } swap(arr[i], arr[minIdx]); } }

B

void selectSort(int arr[], int n) { for(int i=0; i<n-1; i++){ int minIdx = i; for(int j=i+1; j<n; j++){ if(arr[minIdx] < arr[j]) minIdx = j; } swap(arr[i], arr[minIdx]); } }

C

void selectSort(int arr[], int n) { for(int i=0; i<n-1; i++){ int minIdx = i; for(int j=0; j<n; j++){ if(arr[j] < arr[minIdx]) minIdx = j; } swap(arr[i], arr[minIdx]); } }

D

void selectSort(int arr[], int n) { for(int i=0; i<n-1; i++){ int minIdx = i; for(int j=i+1; j<n; j++){ if(arr[j] < arr[minIdx]) minIdx = j; } if(minIdx != i) swap(arr[i], arr[minIdx]); } }

程序运行统计
暂无判题统计
提交0次 正确率0.00%
答案解析