首页 > 个人简历 > 求职简历 > 笔试题目 > 中兴在我们学校的笔试

中兴在我们学校的笔试

发布时间:2019-02-21

中兴在我们学校的笔试

  

XX年12月中兴在我们学校的笔试,最后的大题/p

(其实这些大公司的笔试不难,也不就是如此,只要学一下数据结构就可以搞定!)

排序及查找方法

#include malloc.h
#includestdio.h
#define n 11
/*用监视哨查找*/
int search(int array[],int n,int k)
{int i;
i=n-1;
array[0]=k;
while(array[i]!=k) i--;
return(i);
}
/*折半查找法*/
int halfsearch(int array[],int n,int k)
{int i,j,mid;
i=1;j=n;
while(i=j)
{mid=(i j)/2;
if(k==array[mid]) return(mid);
else if(karray[mid]) j=mid-1;
else i=mid 1;
}
return(0);
}

/*冒泡排序法*/
void mpsort(int array[])
{int i,j,a;
a=0;
for(i=1;in;i )
for(j=i 1;jn;j )
if(array[i]array[j])
{a=array[i];
array[i]=array[j];
array[j]=a;}
}
/*直接插入排序*/
void insertsort(int array[])
{int i,j;
for(i=2;in;i )
{array[0]=array[i];
j=i-1;
while(array[0]array[j])
{array[j 1]=array[j--];
array[j 1]=array[0];
}
}
}
/*建立*/
void creat(int array[])
{int i;
printf(enter the array:);
for(i=1;in;i )
scanf(%d,array[i]);
}

/*显示*/
void print(int array[])
{int i;
printf(the numbers after sort is:);
for(i=1;in;i )
printf(%d ,array[i]);
printf();
}

main()
{int a[11],i,x,chang;
/*printf(enter the array);
for(i=1;i11;i )
scanf(%d,a[i]);*/

aga:
printf(chang:1: use watching method finding 2:use half method finding 3: use directness intsert method sort 4:use bubble up method sort 5:exit);
scanf(%d,chang);
switch (chang)
{case 1:
{creat(a);
printf(please int the search number:);
scanf(%d,x);
printf(the number station is:%d,search(a,n,x));
goto aga;
}
case 2:
{ creat(a);
insertsort(a);
print(a);
printf(please int the search number:);
scanf(%d,x);
printf(the number station is:%d,halfsearch(a,n,x));
goto aga;
}
case 3:
{creat(a);
insertsort(a);
print(a);
goto aga;
}

case 4:
{creat(a);
mpsort(a);
print(a);
goto aga;
}

case 5:{ printf(exit!);break;}
default:{printf(error!); goto aga;}
}
}

二、线性链表的存储实现

struct lnode{

elemtype data;

struct lnode *next;

};

typedef struct lnode lnode;

typedef struct lnode * linklist;

1初始化操作

status init_l(linklist l){

if (l=(linklist *)malloc(sizeof(lnode)))

{l-next=null;return 1;}

else return 0;

}

2插入操作

status listinsert_l(linklist l,int i,elemtype e){

p=l,j=0;

while(pji-1){p=p-next; j;}

if(!p||ji-1) return error;