今日头条mysql面试题_【今日头条】测试工程师面试题

第一套

41b7ffabdc50b3838cd284e5c22e8cc6.png

答案整理如下:

算法题

二叉树遍历

思路

遍历,就是按一定的规则和顺序走遍二叉树的所有结点,使每一个结点都被访问一次,而且只被访问一次。

分为递归算法、非递归算法

递归算法又分为:先序遍历、中序遍历、后序遍历

递归算法

//输出

voidVisit(BiTree T){if(T->data != '#'){

printf("%c",T->data);

}

}//先序遍历

voidPreOrder(BiTree T){if(T !=NULL){//访问根节点

Visit(T);//访问左子结点

PreOrder(T->lchild);//访问右子结点

PreOrder(T->rchild);

}

}//中序遍历

voidInOrder(BiTree T){if(T !=NULL){//访问左子结点

InOrder(T->lchild);//访问根节点

Visit(T);//访问右子结点

InOrder(T->rchild);

}

}//后序遍历

voidPostOrder(BiTree T){if(T !=NULL){//访问左子结点

PostOrder(T->lchild);//访问右子结点

PostOrder(T->rchild);//访问根节点

Visit(T);

}

}

非递归算法比较复杂,每一级都需要循环所有孩子节点

判断IP合法性

思路:

IP地址:由 . 分割的四组数字,每个数字的范围是 0 - 255

使用正则表达式,网上搜到IP的正则表达式为

((?:(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))\.){3}(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d))))

java实现代码

public classisIP {public static void main(String[] args) throwsException {

String ip= "172.16.11.14";

String regex= "((?:(?:25[0-5]|2[0-4]\\d|((1\\d{2})|([1-9]?\\d)))\\.){3}(?:25[0-5]|2[0-4]\\d|((1\\d{2})|([1-9]?\\d))))";if(ip.matches(regex)) {

System.out.println("合法");

}else{

System.out.println("非法");

}

}

}

测试设计题

朋友对状态点赞

1.是否可以正常点赞和取消;2.点赞的人是否在可见分组里;3.点赞状态是否能即时更新显示;4.点赞状态,共同好友是否可见;5.不同手机,系统显示界面如何;6.性能检测,网速快慢对其影响;7.点赞显示的是否正确,一行几个;8.点赞是否按时间进行排序,头像对应的是否正确;9.是否能在消息列表中显示点赞人的昵称、备注;10.可扩展性测试,点赞后是否能发表评论;11.是否在未登录时可查看被点赞的信息。

varchar(512)升级到varchar(1024)后测试

varchar

mysql中varchar存储的中文字符、英文字符、数字,是一致的,varchar(512)能存储512和汉字或者数字或者字母;

sql server中varchar存储汉字不同,一个汉字占两个字符;

针对能存储的汉子和字母数字字符数,进行不同内容长度的测试;

系统测试题

多线程安全日志库

使用以下代码测试打印出来的日志序号是否顺序

for(int i = 0; i <= 100; i++){

Thread t= new Thread(new MultithreadingLog("JOB" +i));

t.start();

}

IM系统测试

登录

注册

好友管理:增删改好友

消息收发:消息发送接收

安全:本地密码保存加密、消息网络通讯加密

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

第二套

5ccfb2b917636c009aa6507a9979ae68.png

字符串拼接函数

C语言

char* strconcat(char * pCh1, char *pCh2)

{char *result = (char *) malloc(strlen(apCh1) + strlen(pCh2) + 1); //局部变量,用malloc申请内存

if (result == NULL) exit (1);char *tempc = result; //把首地址存下来

while (*pCh1 != '\0') {*result++ = *pCh1++;

}while ((*result++ = *pCh2++) != '\0') {

;

}//注意,此时指针c已经指向拼接之后的字符串的结尾'\0' !

return tempc;//返回值是局部malloc申请的指针变量,需在函数调用结束后free之

}

有序单向链表反转

LinkedList ReverseSinglyLinkedList(LinkedList list)

{

LinkedList newList;//新链表的头结点

LNode *tmp; //指向list的第一个结点,也就是要摘除的结点//

//参数为空或者内存分配失败则返回NULL// if (list == NULL || (newList = (LinkedList)malloc(sizeof(LNode))) ==NULL)

{returnNULL;

}//

//初始化newList// newList->data = list->data;

newList->next =NULL;//

//依次将list的第一个结点放到newList的第一个结点位置// while (list->next !=NULL)

{

tmp= newList->next; //保存newList中的后续结点

newList->next = list->next; //将list的第一个结点放到newList中

list->next = list->next->next; //从list中摘除这个结点

newList->next->next = tmp; //恢复newList中后续结点的指针

}//

//原头结点应该释放掉,并返回新头结点的指针//free(list);returnnewList;

}

strconcat测试用例

手机app发帖子测试点

功能点测试

流程测试

交叉测试,来电、短信等app进入后台

内存不足测试

编辑过程中应用切换测试

重复提交测试

升级HTTPS测试

???

其他几个题目暂时没有查到相关答案,欢迎大家补充说明。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值