阿里巴巴校招软件笔试题经典

更多笔试题👉「校园招聘面试题库」:校园招聘笔试面试题目合集


  1. 写一个函数,输入一个二叉树,树中每个节点存放了一个整数值,函数返回这棵二叉树中相差最大的两个节点间的差值绝对值。请注意程序效率。

int Max(bitree * root)

{ if(root==NULL)return 0;

else{ if(root->data>max)

max=root->data;

Max(root->lchild);

Max(root->rchild);

}

return max;

}

int Min(bitree * root)

{ if(root==NULL)return 0;

else{ if(root->data<min)

min=root->data;

M(root->lchild);

M(root->rchild);

}

return min;

}

int main()

{ bitree *root;

root=creatbitree();

printf("最大值与最小值之差为:\n");

printf("%d",abs(Max(root)-Min(root)));

return 0;

}

2、给定一个query和一个text,均由小写字母组成。要求在text中找出以同样的顺序连续出现在query中的最长连续字母序列的长度。例如, query为"acbac",text为"acaccbabb",那么text中的"cba"为最长的连续出现在query中的字母序列,因此,返回结果应该为其长度3。请注意程序效率。

#include "stdio.h"

#include "string.h"

#define N 100

int GetMaxCommStr(char *s1,char *s2,char *s3)//s1、s2 为要对比的俩个字符串,

{ //s3用来存储最大的公共字符串

// char *s1=stra, *s2=strb;

char len1 = strlen(s1);

char len2 = strlen(s2);

char maxlen = 0;

char i,j,r1;

for( i = 0; i < len1; i++)

{

for(j = 0; j < len2; j++)

{

if(s1[i] == s2[j]) //找到了第一个相等的

{

char as = i, bs = j, count = 1; //保存第一个相等的首地址

while( (as+1<len1) && (bs+1<len2) && (s1[++as] == s2[++bs]) ) //查找最大相等长度

count++;

if(count > maxlen) //如果大于最大长度则更新

{

maxlen = count;

r1=i; //存储公共子字符串的起始位

}

}

}

}

if (maxlen>0) //有公共子字符串

{

for(i=0;i<maxlen;i++)

{

*(s3+i)=*(s1+i);

}

}

return maxlen;

}

int main ()

{

char a[N]={0},b[N]={0},str[N]={0};

printf ("Enter two string(the length < 100)!\n",N);

scanf("%s%s",a,b);

int maxoflen=GetMaxCommStr(a,b,str);

printf("max of length is: %d\n",maxoflen);

return 0;

}

第一题:测试淘宝站内的搜索系统,请问你能想到哪些方法来进行测试?

相关推荐
浅念-9 小时前
递归解题指南:LeetCode经典题全解析
数据结构·算法·leetcode·职场和发展·排序算法·深度优先·递归
Kiling_07049 小时前
Java集合进阶:Set与Collections详解
算法·哈希算法
智者知已应修善业9 小时前
【51单片机89C51及74LS273、74LS244组成】2022-5-28
c++·经验分享·笔记·算法·51单片机
洛水水10 小时前
【力扣100题】33.验证二叉搜索树
算法·leetcode·职场和发展
SimpleLearingAI10 小时前
聚类算法详解
算法·数据挖掘·聚类
刀法如飞11 小时前
Go 字符串查找的 20 种实现方式,用不同思路解决问题
算法·面试·程序员
Dlrb121112 小时前
C语言-指针数组与数组指针
c语言·数据结构·算法·指针·数组指针·指针数组·二级指针
WL_Aurora12 小时前
Python 算法基础篇之集合
python·算法
平行侠13 小时前
A15 工业路由器IP前缀高速检索与内存压缩系统
网络·tcp/ip·算法
阿旭超级学得完14 小时前
C++11包装器(function和bind)
java·开发语言·c++·算法·哈希算法·散列表