-顺序表应用 多余元素删除 SDUT JAVA

it2026-09-02  2

#include <stdio.h> #include <stdlib.h> int i,j ; struct Seqlist { int *arr; int size; int capacity; }; void CreatSeqlist(struct Seqlist *list, int capacity) { list->arr = (int*)malloc(sizeof(int) * capacity); list->size=0; list->capacity=capacity; } void insertSeqlist(struct Seqlist *list, int num) { if(list->size>=list->capacity)return; list->arr[list->size++]=num; } void Deletelist(struct Seqlist *list) { int n = list->size; list->size = 1 ; for( i = 1 ; i < n ; i++) { int flag = 1 ; for( j = 0 ; j < list->size ; j++) { if(list->arr[j]==list->arr[i]) { flag = 0; break; } } if(flag) { list->arr[list->size++]=list->arr[i]; } } } void Show(struct Seqlist *list) { int length = list->size; for( i = 0 ; i < length; i++ ) { if(i)printf(" %d",list->arr[i]); else printf("%d",list->arr[i]); } printf("\n"); } int main() { int t ; scanf("%d",&t); while(t--) { struct Seqlist list; int num; scanf("%d",&num); CreatSeqlist(&list,num); for( i = 0; i<num; i++) { int a ; scanf("%d",&a); insertSeqlist(&list,a); } Deletelist(&list); Show(&list); } return 0; }
最新回复(0)