当前位置:简历谷 >

面试 >面试笔试 >

2006年12月中兴在我们学校的笔试

2006年12月中兴在我们学校的笔试

2006年12月中兴在我们学校的笔试--数据结构
2006年12月中兴在我们学校的笔试,最后的大题

2006年12月中兴在我们学校的笔试

(其实这些大公司的笔试不难,也不就是如此,只要学一下数据结构就可以搞定!)
? ?
排序及查找方法 ? #include #include #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(k/*冒泡排序法*/ void mpsort(int array[]) {int i,j,a; a=0; ?for(i=1;iarray[j]) ???? {a=array[i]; ???? array[i]=array[j]; ???? array[j]=a;} } /*直接插入排序*/ void insertsort(int array[]) {int i,j; ?for(i=2;i main() {int a[11],i,x,chang; ?/*printf("enter the array"); ?for(i=1;i<11;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(p&&jnext;++j;}
if(!p||j>i-1) return ERROR;
s=(LinkList)malloc(sizeof(LNode));
s->data=e;s->next=p->next;
p->next=s;
return OK;
}//ListInsert_L
?
3删除操作
Status ListDelete_L(LinkList &L,int i,ElemType &e){
p=L,j=0;
while(p&&jnext;++j;}
if(!p->next||j>i-1) return ERROR;
q=p->next;p->next=q->next;
e=q->data;free(q);
return OK;
}//ListDelete_L

标签: 笔试 中兴 学校
  • 文章版权属于文章作者所有,转载请注明 https://jianligu.com/ms/bishi/emgrd.html
专题