网站数据库模板,哪里有手机网站建设公司,微信小程序定制开发报价方案,长沙市网站推广哪家专业题目
面试过程中#xff0c;被问到这道面试题#xff0c;做个记录#xff1a;
有一组数组x#xff1a; x{“11”,”aa”}
要比较的数组y是#xff1a; y{“11”,”aa”,“11”,”aa”} y1{“11”,”aa”,“11”,”res”,”aa”} y2 {“11”,”11”,“11”,”aa”}
需…题目
面试过程中被问到这道面试题做个记录
有一组数组x x{“11”,”aa”}
要比较的数组y是 y{“11”,”aa”,“11”,”aa”} y1{“11”,”aa”,“11”,”res”,”aa”} y2 {“11”,”11”,“11”,”aa”}
需求查找y数组找出与x数组相同项(相同项可能有多组)找最后一组并返回最后一组的第一个元素的下标
以上分别返回 2 0 2 使用OC语言写的代码
- (void)viewDidLoad {[super viewDidLoad];//测试数组NSArray *x [aa, aa, 11];NSArray *y [aa, aa, aa, 11];//调用NSInteger result [self lastIndexWithArrayX:x andY:y];NSLog(%d, result);
}//返回最后一组的下标
- (NSInteger)lastIndexWithArrayX:(NSArray *)x andY:(NSArray *)y
{//判断边界条件if(x nil) return 0;if(y nil) return 0;//定义最后找到的Y值indexint lastYIndex 0;//比较x和yint findYIndex 0;for(findYIndex 0; findYIndex y.count; findYIndex){//yint tempFindYIndex findYIndex;for(int j 0; j x.count; j){//xif(y[tempFindYIndex] x[j]){//相等找下一个//边界条件x找完了if(j x.count - 1){//找下一组lastYIndex tempFindYIndex;//记录最后一次找到的Y值的indexbreak;}//1操作tempFindYIndex;}else{//不相等y值从下一个开始x值从0开始break;}}}if(lastYIndex 0){return lastYIndex - (x.count - 1);}else{return 0;}
}