摘要:
已知指针ha和hb分别指向两个单链表的头结点,并且已知两个链表的长度分别为m和n。试写一算法将这两个链表连接在一起,假设指针hc指向连接后的链表的头结点,并要求算法以尽可能短的时间完成连接运算。C code:#include<stdio.h>#include<stdlib.h>#defineLIST_INIT_SIZE10#defineLIST_INCREMENT2#defineERROR0#defineOK1#defineOVERFLOW-1#defineTRUE1typedefintStatus;structLNode{intdata;LNode*next;};ty 阅读全文
摘要:
1、试写一算法在带头结点的单链表结构上实现线性表操作Locate(L,x)2、试写一算法在带头结点的单链表结构上实现线性表操作Length(L)C code:#include<stdio.h>#include<stdlib.h>#defineERROR0#defineOK1#defineOVERFLOW-1#defineTRUE1typedefintStatus;structLNode{intdata;LNode*next;};typedefLNode*LinkList;voidInitList(LinkList&L){L=(LinkList)malloc(si 阅读全文
摘要:
设顺序表va中的数据元素递增有序。试写一算法,将x插入到顺序表的适当位置上,以保持该表的有序性。算法:StatusInsert_Sqlist(SqList&va,intx){inti;if(va.length+1>va.listsize)returnERROR;va.length++;for(i=va.length-1;va.elem[i]>x&&i>=0;i--)va.elem[i+1]=va.elem[i];va.elem[i+1]=x;returnOK;}C code:#include<stdio.h>#include<stdl 阅读全文
摘要:
七种qsort排序方法<本文中排序都是采用的从小到大排序>一、对int类型数组排序int num[100];Sample:int cmp ( const void *a , const void *b ){return *(int *)a - *(int *)b;}qsort(num,100,sizeof(num[0]),cmp);二、对char类型数组排序(同int类型)char word[100];Sample:int cmp( const void *a , const void *b ){return *(char *)a - *(int *)b;}qsort(word,1 阅读全文