
Código completo
Incluye función principal, compatible con C/C++/Java/Python
Animación interactiva
Todos los algoritmos admiten la entrada de datos para generar animaciones.
Normas de escritura
Cumple con las normas de enseñanza de las universidades nacionales.
// Ordenamiento por selección simple
void SelectSort(ElemType A[], int n) {
int i, j, min, temp;
// Bucle externo: recorre desde el primer elemento hasta el penúltimo elemento del arreglo.
for (i = 0; i < n - 1; i++) {
min = i; // 假设当前位置的元素是最小的
// 内循环:从外循环的下一个位置到数组末尾进行遍历
for (j = i + 1; j < n; j++) {
// 检查是否有比当前最小值更小的元素
if (A[j] < A[min]) min = j;
}
// 如果最小值的索引不等于当前位置索引,说明找到了比当前位置更小的元素
if (min != i) {
temp = A[i]; // 临时变量用于交换元素
A[i] = A[min]; // 将当前位置元素与最小值元素交换位置
A[min] = temp; // 更新最小值位置的元素为当前位置元素
}
}
}
int main () {
// 注意,0号位置是哨兵,不是要排序的值
ElemType arr[9] = {20, 60, 30, 10, 40, 90, 80, 70, 50};
SelectSort(arr, 9);
printf("简单选择排序排序结果:");
for (int i = 0; i < 9; i++) {
printf("%d ", arr[i]);
}
return 0;
// 完整代码:https://algo2vis.comSelecciona el código de arriba para experimentar la función de análisis de IA.
GPT-CODE
Selecciona el código de la izquierda que necesitas analizar y haz clic en Análisis de IA para experimentar.
Ofrecemos análisis en línea de IA 24/7, respondiendo tus dudas de programación en cualquier momento. Ya sea de noche o los fines de semana, estamos a tu lado para asegurarnos de que sigas avanzando.