以下函数为直接选择排序算法,对a[1],a[2],…a[n]中的记录进行直接选择排序,完成程序中的空格。https://assets.asklib.com/images/image2/2018072511530776870.jpg
函数GetElem实现返回单链表的第i个元素,请在空格处将算法补充完整。 int GetElem(LinkList L,int i,Elemtype *e){ LinkList p;int j;p=L->next;j=1; while(p&&jj>i)return ERROR;*e= (2) ;return OK;}
下列是在具有头结点单向链表中删除第i个结点的算法,请在空格内填上适当的语句。https://assets.asklib.com/images/image2/2018072509045110625.bmp
下列是用尾插法建立带头结点的且有n个结点的单向链表的算法,请在空格内填上适当的语句。https://assets.asklib.com/images/image2/2018072508582580627.bmp
下列是用头插法建立带头结点的且有n个结点的单向链表的算法,请在空格内填上适当的语句。https://assets.asklib.com/images/image2/2018072509021213335.bmp
在KMP模式匹配算法中,需要求解模式串p的next函数值,其定义如下(其中,j为模式串字符的序号)。对于模式串"abaabaca",其next函数值序列为()https://assets.asklib.com/psource/201609091115239111.jpg
函数ListDelete_sq实现顺序表删除算法,请在空格处将算法补充完整。int ListDelete_sq(Sqlist *L,int i){int k;if(i<1i>L->length) return ERROR;for(k=i-1;klength-1;k++) L->slist[k]=(1); (2) ; return OK;}
函数实现单链表的插入算法,请在空格处将算法补充完整。int ListInsert(LinkList L,int i,ElemType e){LNode *p,*s;int j; p=L;j=0; while((p!=NULL)&&(jnext;j++; } if(p==NULLj>i-1) return ERROR; s=(LNode *)malloc(sizeof(LNode)); s->data=e; (1) ; (2); return OK;}/*ListInsert*/
朴素模式匹配算法,算法运行时间为O(m*n)。
函数实现单链表的删除算法,请在空格处将算法补充完整。int ListDelete(LinkList L,int i,ElemType *s){LNode *p,*q;int j;p=L;j=0;while(((1) )&&(jnext;j++;}if(p->next==NULLj>i-1) return ERROR;q=p->next; (2);*s=q->data;free(q);return OK;}/*listDelete*/
KMP算法的特点是在模式匹配时指示主串的指针不变
若目标串的长度为n,模式串的长度为[n/3],则执行BF模式匹配算法时,在最坏情况下的时间复杂度是( )
设模式串的长度为m,目标串的长度为n,当n≈m且处理只匹配一次的模式时,朴素的匹配(即子串定位函数)算法所花的时间代价可能会更为节省。( )
1.实现递归函数必须有递归算法和递归终止条件。
●在KMP模式匹配算法中,需要求解模式串p的next函数值,其定义如下(其中,j为模式串中字符的序号)。对于模式串“abaabaca”,其next函数值序列为(57)。
布鲁特-福斯算法从主串的第一个字符起与模式串的第一个字符进行比较,若相等,则继续逐字符进行后续比较,否则从主串第二个字符开始,直至模式串中每个字符依次和主串中一个连续的字符序列相等为止,此时称匹配成功()
【判断题】设模式串的长度为m,目标串的长度为n,当n≈m且处理只匹配一次的模式时,朴素的匹配(即子串定位函数)算法所花的时间代价可能会更为节省。
设正文串长度为n,模式串长度为m,则模式匹配的KMP算法的时间复杂度为()。
函数ListDelete_sq实现顺序表删除算法,请在空格处将算法补充完整。int ListDelete_sq(Sqlist *L,int i){int k;if(i<1,,i>L->length) return ERROR;for(k=i-1;k<l->length-1;k++) L->slist[k]=(1); (2) ; return OK;}
27、设模式串(子串)的长度为m,目标串(主串)的长度为n。当n≈m且处理只匹配一次的模式时,简单模式匹配(BF)算法所花费的时间代价也可能会比KMP算法更节省。
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: 1.完成类Rect的构造函数,实现对变量left、right、top、bottom的初始化,缺省值都为0,请在注释∥********1********后添加适当的语句。 2.完成类Rectangle的构造函数,请在注释∥********2********后添加适当
函数实现串的模式匹配算法,请在空格处将算法补充完整。intindex_bf(sqstring*s,sqstring*t,intstart){inti=start-1,j=0;while(i<s->len&&j<t->len)if(s->data[i]==t->data[j]){i++;j++;}else{i=();j=0;}if(j>=t->len)return();elsereturn-1;}}/*listDelete*/</t-></s->
9、对于KMP算法,在模式匹配时指示主串匹配位置的指针() 。
19、在KMP算法中,用next 数组存放模式串的部分匹配信息﹐模式串位j与目标串i比较,如果两字符相等时,则j的位移方式是