#include <stdio.h>
#include <stdlib.h>
#define MAXLENGTH 10
typedef int ElemType;
typedef struct SqList{
ElemType data[MAXLENGTH];
int length;
}SqList;
ElemType deleteMin(SqList *l){
if(l->length == 0){
printf("Sequence list is empty->\n");
exit(0);
}
ElemType min = l->data[0];
int idx = 0, i;
for(i=1; i<l->length; i++){
if(l->data[i] < min){
min = l->data[i];
idx = i;
}
}
l->data[idx] = l->data[l->length-1];
l->length--;
return min;
}
void printSqList(SqList *l){
for(int i=0; i<l->length; i++){
printf("%d ", l->data[i]);
}
}
int main(){
SqList l;
ElemType d[10] = {2,3,4,5,1,6,7,8,9,10};
l.length = 10;
for(int i=0; i<10; i++){
l.data[i] = d[i];
}
int tmp;
tmp = deleteMin(&l);
printf("%d\n", tmp);
printSqList(&l);
printf("\n");
return 1;
}
Junr:problem junr$ ./a.out
1
2 3 4 5 10 6 7 8 9