假设线性表采用顺序存储结构,其类型定义如下: #define ListSize 100 typedef struct{ int data[ListSize]; int length; }SeqList,*Ta

admin2010-02-02  11

问题 假设线性表采用顺序存储结构,其类型定义如下:
   #define ListSize 100
   typedef struct{
     int data[ListSize];
     int length;
   }SeqList,*Table;
   编写算法,将顺序表L中所有值为奇数的元素调整到表的前端。

选项

答案参考答案一: void f34(Table L) { int i,j,t; i=0; j=L—>length-1; while(i<j) { while(i<j&&L—>data[i]%2) i++; while(i<j&&L—>data[j]%2==0) j--; if(i<j) { t=L—>data[i]; L—>data[i]=L—>data[j]; L—>data[j]=t; i++; j--; } } } 参考答案二: void f34(SeqList*L) { int i,j=0.t; for(i=0;i<L—>length;i++) if(L—>data[i]%2)/*奇数*/ { if(i!=j) { t=L—>data[i]; L—>data[i]=L—>data[j]; L—>data[j]=t; } j++; } }

解析
转载请注明原文地址:https://kaotiyun.com/show/QwAx777K
本试题收录于: 数据结构题库理工类分类
0

相关试题推荐
最新回复(0)