写出下面算法的功能。intfunction(SqString*s1,SqString*s2){inti;for(i=0;ilength&&ilength;i++)if(s->data[i]!=s2->data[i])returns1->data[i]-s2->data[i];returns1->length-s2->length;}

题目

写出下面算法的功能。intfunction(SqString*s1,SqString*s2){inti;for(i=0;ilength&&ilength;i++)if(s->data[i]!=s2->data[i])returns1->data[i]-s2->data[i];returns1->length-s2->length;}


相似考题
更多“写出下面算法的功能。intfunction(SqString*s”相关问题
  • 第1题:

    编写算法,实现下面函数的功能。函数void insert(char*s,char*t,int pos)将字符串t插入到字符串s中,插入位置为pos。假设分配给字符串s的空间足够让字符串t插入。(说明:不得使用任何库函数)


    参考答案:本题是字符串的插入问题,要求在字符串s的pos位置,插入字符串t。首先应查找字符串s的pos位置,将第pos个字符到字符串s尾的子串向后移动字符串t的长度,然后将字符串t复制到字符串s的第pos位置后。
      对插入位置pos要验证其合法性,小于1或大于串s的长度均为非法,因题目假设给字符串s的空间足够大,故对插入不必判溢出。
      [算法描述]
      void insert(char *s,char *t,int pos)
      //将字符串t插入字符串s的第pos个位置。
      {int i=1,x=0; char *p=s,*q=t; //p,q分别为字符串s和t的工作指针
      if(pos<1) {cout<<“pos参数位置非法”<  while(*p!=’\0’&&i  //若pos小于串s长度,则查到pos位置时,i=pos。
      if(*p == '/0') { cout<  else //查找字符串的尾
      while(*p!= '/0') {p++; i++;} //查到尾时,i为字符‘\0’的下标,p也指向‘\0’。
      while(*q!= '\0') {q++; x++; } //查找字符串t的长度x,循环结束时q指向'\0'。
      for(j=i;j>=pos ;j--){*(p+x)=*p; p--;}//串s的pos后的子串右移,空出串t的位置。
      q--; //指针q回退到串t的最后一个字符
      for(j=1;j<=x;j++) *p--=*q--; //将t串插入到s的pos位置上
      [算法讨论] 串s的结束标记('\0')也后移了,而串t的结尾标记不应插入到s中。

  • 第2题:

    设S为C语言的语句,计算机执行下面算法时,算法的时间复杂度为()。

    A.n2

    B.O(nlgn)

    C.O(n)

    D.O(n2)


    正确答案:D

  • 第3题:

    为了修补SNMP的安全缺陷,提出S-SNMP标准。这个协议提供的数据加密功能采用()。

    • A、RSA算法
    • B、IDEA算法
    • C、RC5算法
    • D、DES算法

    正确答案:D

  • 第4题:

    写出基于颜色的图像插值算法。


    正确答案: 输入:原始图像A和目标图像B,以及参数t∈[0,1],要求图像A和B具有相同的宽度和高度。
    输出:参数t所对应的中间帧图像。
    步骤1:对于初始图像A的每一个像素位置,依次执行下面的各个步骤:
    步骤1.1:获取初始图像在该位置的颜色值(R0,G0,B0);
    步骤1.2:获取在目标图像相同对应位置上的颜色值(R1,G1,B1)。
    步骤1.3:将(R0,G0,B0)、(R1,G1,B1)和参数t代入公式R(t)=(1-t)R0+tR1
    G.t)=(1-t)G0+tG1
    B.t)=(1-t)B0+tB1
    得到颜色值(R(t),G(t),B(t));
    步骤1.4:将中间帧图像在相同对应位置上的颜色值设为(R(t),G(t),B(t))。
    步骤2:返回中间帧图像。

  • 第5题:

    写出下面算法的功能。voidfunction(Bitree*t){if(p!=NULL){function(p->lchild);function(p->rchild);printf(“%d”,p->data);}}


    正确答案:二叉树后序遍历递归算法

  • 第6题:

    函数实现串的模式匹配算法,请在空格处将算法补充完整。intindex_bf(sqstring*s,sqstring*t,intstart){inti=start-1,j=0;while(ilen&&jlen)if(s->data[i]==t->data[j]){i++;j++;}else{i=();j=0;}if(j>=t->len)return();elsereturn-1;}}/*listDelete*/


    正确答案:i-j+1 i-t->len+1

  • 第7题:

    写出完成下列功能的UNIX命令。删除当前目录下同级子目录s1,s2.


    正确答案:rmdir s1 s2

  • 第8题:

    执行下面的程序段后,写出i和s的值。 s=2 Fori=3.2To4.9Step0.8 s=s+1 Nexti


    正确答案: 循环步长为0.8
    第一次循环i从3.2开始,s=s+1即s=3
    第二次循环i=4,s=s+1即s=4
    第三次循环i=4.8,s=s+1即s=5
    然后i=5.6>4.9,循环结束。
    所以i=5.6,s=5。

  • 第9题:

    问答题
    写出几种线裁剪算法;写出几种多边形裁剪算法。

    正确答案:
    (1)线的裁剪算法:
    ①矢量裁剪法;
    ②编码裁剪法;
    ③中点分割裁剪法。
    (2)多边形的裁剪算法:
    ①逐边裁剪法;
    ②双边裁剪法。
    解析: 暂无解析

  • 第10题:

    问答题
    写出算法的功能。intfun(sqstring*s,sqstring*t,intstart){inti=start-1,j=0;while(ilen&&jlen)if(s->data[i]==t->data[j]){i++;j++;}else{i=i-j+1;j=0;}if(j>=t->len)returni-t->len+1;elsereturn-1;}

    正确答案: 串的模式匹配算法
    解析: 暂无解析

  • 第11题:

    填空题
    写出下面算法的功能。voidfunction(Bitree*t){if(p!=NULL){function(p->lchild);function(p->rchild);printf(“%d”,p->data);}}

    正确答案: 二叉树后序遍历递归算法
    解析: 暂无解析

  • 第12题:

    问答题
    执行下面的程序段后,写出i和s的值。 s=2 Fori=3.2To4.9Step0.8 s=s+1 Nexti

    正确答案: 循环步长为0.8
    第一次循环i从3.2开始,s=s+1即s=3
    第二次循环i=4,s=s+1即s=4
    第三次循环i=4.8,s=s+1即s=5
    然后i=5.6>4.9,循环结束。
    所以i=5.6,s=5。
    解析: 暂无解析

  • 第13题:

    写出中软DTP板的功能及AL灯、M灯、S灯、S0灯的含义


    正确答案:DTP板是数字中继处理机板,可选热备分,每板两个A口,完成1号信令,7号信令及系统共线信令的处理。AL灯亮:表示DTP板告警M灯亮:表示此板为主用DTPS灯亮:表示此板为备用DTPS0灯亮:表示故障S0灯灭:表示正常

  • 第14题:

    计算s=1+3+5+7+9的算法流程如图8所示,若要计算s=2×3×5×7×9,则下面流程图中的



    答案:A
    解析:
    题中将s=1+3+5+7+9,改成计算s=1×3×5×7×9,变量X的步长还是2,所以应该为s←s×x,x+←+2。

  • 第15题:

    写出下面各项DOS命令的功能。1).DELB:*.PRG2).FORMATA:/S/V3).COPYC:///DOS/B*.*B:/WT4).DIRA:>PRN


    正确答案: 1).删除B盘上当前目录下的所有扩展名为PRG的文件。
    2).格式化A盘,并且将复制系统文件和加上卷标。
    3).拷贝C盘上DOS子目录下的以B开头的所有文件到B盘上的WT子目录下。
    4).查看A盘上的所有目录,并打印输出。

  • 第16题:

    用贪心算法设计0-1背包问题。要求:说明所使用的算法策略;写出算法实现的主要步骤;分析算法的时间。


    正确答案: 首先计算每种物品单位重量的价值Vi/Wi,然后,依贪心选择策略,将尽可能多的单位重量价值最高的物品装入背包。若将这种物品全部装入背包后,背包内的物品总重量未超过C,则选择单位重量价值次高的物品并尽可能多地装入背包。依此策略一直地进行下去,直到背包装满为止。
    具体算法可描述如下:
    void Knapsack(int n,float M,float v[],float w[],float x[])
    {Sort(n,v,w);
    int i;
    for(i=1;i<=n;i++) x[i]=0;
    float c=M;
    for(i=1;i<=n;i++)
    {if(w[i]>c) break;
    x[i]=1;
    c-=w[i];
    }
    if(i<=n)x[i]=c/w[i];
    }

  • 第17题:

    写出算法的功能。intfun(sqstring*s,sqstring*t,intstart){inti=start-1,j=0;while(ilen&&jlen)if(s->data[i]==t->data[j]){i++;j++;}else{i=i-j+1;j=0;}if(j>=t->len)returni-t->len+1;elsereturn-1;}


    正确答案: 串的模式匹配算法

  • 第18题:

    写出算法的功能。int L(head){ node * head; int n=0; node *p; p=head; while(p!=NULL) { p=p->next; n++; } return(n); }


    正确答案:求单链表head的长度

  • 第19题:

    下面是一段关于计算变量s的算法: ①变量s的初值是0  ②变量i从1起循环到n,此时变量s的值由下面的式子表达式计算 ③s=s+(-1)*i ④输出变量s的值 这个计算s值的算法中,s的代数式表示是()。

    • A、1-2+3-4+…+(-1)n*(n-1)
    • B、1-2+3-4+…+(-1)n-1*n
    • C、1+2+3+4+...+(n-1)+n
    • D、-1-2-3-4-...-n

    正确答案:D

  • 第20题:

    问答题
    写出完成下列功能的UNIX命令。删除当前目录下同级子目录s1,s2.

    正确答案: rmdir s1 s2
    解析: 暂无解析

  • 第21题:

    填空题
    函数实现串的模式匹配算法,请在空格处将算法补充完整。intindex_bf(sqstring*s,sqstring*t,intstart){inti=start-1,j=0;while(ilen&&jlen)if(s->data[i]==t->data[j]){i++;j++;}else{i=();j=0;}if(j>=t->len)return();elsereturn-1;}}/*listDelete*/

    正确答案: i-j+1 i-t->len+1
    解析: 暂无解析

  • 第22题:

    单选题
    为了修补SNMP的安全缺陷,提出S-SNMP标准。这个协议提供的数据加密功能采用()。
    A

    RSA算法

    B

    IDEA算法

    C

    RC5算法

    D

    DES算法


    正确答案: C
    解析: 暂无解析

  • 第23题:

    问答题
    写出下面算法的功能。intfunction(SqString*s1,SqString*s2){inti;for(i=0;ilength&&ilength;i++)if(s->data[i]!=s2->data[i])returns1->data[i]-s2->data[i];returns1->length-s2->length;}

    正确答案: 串比较算法
    解析: 暂无解析