永发信息网

找一个数组的字数组用C语言编代码 求思路

答案:2  悬赏:0  手机版
解决时间 2021-03-05 13:36
  • 提问者网友:最美的风景
  • 2021-03-04 22:52
题目描述
给定两个整型数组,数组a有n个元素, 数组b有m个元素,1<=m<=n<100,请检验数组b是否是数组a的子数组。若从数组a的某个元素a[i]开始,有b[0]=a[i],b[1]=a[i+1],......,b[m]=a[i+m],则称数组b是数组a的子数组。
输入
输入第一行为两个整数n和m;第二行为数组a的n个整数;第三行为数组b的m个整数,各数据之间用空格隔开。
输出
输出占一行。若b是a的子数组,则输出子数组所在位置i,注意下标从0开始;否则输出“No Answer”。
样例输入
8 3
3 2 6 7 8 3 2 5
3 2 5
样例输出
5
最佳答案
  • 五星知识达人网友:怀裏藏嬌
  • 2021-03-04 23:45
最快的方法就是KMP算法,就是把A数组看成字符串A,然后把B数组看成字符串B,利用KMP算法即可实现。具体实现起来,你先看KMP算法,网上大把大把的KMP的代码,然后你来调用这个KMP函数,你只要做一个函数,可以将数组装换成字符串就好了,还有你这个题目是算法吧,之前的那个解答即使做出来到了根本不可能通过系统检验的,那个算法的算法复杂度太大了。如果还有问题的话,加QQ:1096409085。亲,记得给分哦
全部回答
  • 1楼网友:深街酒徒
  • 2021-03-04 23:59
杨辉三角中的每一项是组合数。 将组合数展开后发现相邻项的比例是(i-j+1)/j
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯