数据结构,算法设计题。:1设计算法实现删除顺序表中多余重复元素,如:对于顺序表(1 . 2 .3 .
找靓机APP官方
2024-05-05 18:56:37
最佳回答
现在的学生是怎么了 这么简单的问题还不会,先对的元素进行排序,然后比较有重复则删除,算了我还是给你贴下代码吧#include <stdio.h>//删除一列数中重复的数字使之只保留一个 n 6void delete(int a[],int j){ int i; for(i=j;i<n;i++) a[i]=a[i+1];}void sortdanddelete(int a[]){ int i,j,k=0,t; for(i=0;i<n;i++) for(j=i+1;j<n;j++) if(a[i]>a[j]) { t=a[i]; a[i]=a[j]; a[j]=t; } j=0; for(i=0;i<n-1;i++) { if(a[j]==a[j+1]) { deletel(a,j); j--;//没删除一个数字j减一,保证遍历到每个数字 k++; } j++; } for(i=0;i<n-k;i++) printf("%d ",a[i]);}void main(){ int i; int a[n]={0,1,1,2,2,2}; sortd(a);}还有一种方法的用两个,一个为源表(存原数列),一个为目标表,将源表中的元素王目标表中移(有与之相同的则删除,没有则保存),最后得到的目标表不就是你想要的么,这种方法 我就不写代码了 ,请君自己实现,纯,请给分!!!!!! 20210311