小米2019秋招iOS开发笔试题(B)

时长:120分钟 总分:100分

351浏览 0人已完成答题

题型介绍
题型 单选题 多选题 填空题
数量 10 10 2
1.
序列模式匹配
问题详情

给定文本text和待匹配字符串pattern,二者皆只包含小写字母,并且不为空。
在text中找出匹配pattern的最短字符串,匹配指按序包含pattern,但不要求pattern连续。
如text为abaacxbcbbbbacc,pattern为cbc,text中满足条件的是abaacxbcbbbbacc下划线部分。 输入描述: 多行,每行一个text和一个pattern,用空格分隔。
保证1<=|text|,|pattern|<=1000,Σ|text|,Σ|pattern|<=10000。输入样例: abaacxbcbbbbacc cbc abc x aaabcac ac 输出描述: 输出最短匹配序列起止位置(位置下标从0开始),用空格分隔。若有多个答案,输出起止位置最小的答案;若无满足条件的答案,则起止均为-1。输出样例 4 7 -1 -1 5 6
2.
下面属于ios多线程实现方法的是?
问题详情




3.
内存管理的关键字描述正确的是:
问题详情




4.
下列无效的键路径是:
问题详情




5.
以下属于runtime API以及应用场景的是:
问题详情




6.
客户端每10秒建立一个短连接并迅速调用close,之后该连接会进入TIME...
问题详情

客户端每10秒建立一个短连接并迅速调用close,之后该连接会进入TIME_WAIT状态。系统的TIME_WAIT等待时间配置为10分钟。请问在客户端稳定运行一段时间后,系统中处于TIME_WAIT状态的socket个数最接近下面哪个答案?




7.
在一棵二叉树中,度为2的节点有30个,度为1的节点有10个,则叶子节点的个数是:
问题详情




8.
静态static变量在不同的实例中地址是否一样?他们储存在什么区域?
问题详情




9.
现有初始状态均为空的栈X和队列Y,元素a、b、c、d、e、f、g依次进入栈...
问题详情

现有初始状态均为空的栈X和队列Y,元素a、b、c、d、e、f、g依次进入栈X,每个元素出栈后即进入队列Y,如果出队列的顺序为b、c、f、e、g、d、a,则要求栈X最小容量为




10.
对于排序算法,经常关注的是其时间复杂度和稳定性。下列排序算法中平均时间复杂...
问题详情

对于排序算法,经常关注的是其时间复杂度和稳定性。下列排序算法中平均时间复杂度是O(nlogn)且稳定的是?




11.
在长度为n的顺序表的第i(1≤i≤n+1)个位置上插入一个元素,元素的移动次数为
问题详情




12.
下列关于数据库事务ACID特性的说法不正确的是?
问题详情




13.
若入栈序列为A B C D E F,且进栈和出栈可以穿插进行,则不可能的输...
问题详情

若入栈序列为A B C D E F,且进栈和出栈可以穿插进行,则不可能的输出序列为




14.
下列哪个查找最快?
问题详情




15.
设指针q指向单链表中结点A, 指针p指向单链表中结点A的后继结点B,指针S...
问题详情

设指针q指向单链表中结点A, 指针p指向单链表中结点A的后继结点B,指针S指向被插入的结点X,则在结点A和结点B插入结点X的操作序列为()




16.
设置CALayer的哪些属性,可能会触发离屏绘制
问题详情





17.
关于循环引用和死锁,下列说法正确的有
问题详情





18.
观察下面一段代码: class ClassA { public: virt...
问题详情

观察下面一段代码:
class ClassA
{
public:
    virtual ~ ClassA() {}
    virtual void FunctionA() {}
}
class ClassB
{
public:
    virtual void FunctionB() {}
}
class ClassC : public ClassA,public ClassB
{
public:
}
ClassC aObject
ClassA* pA=&aObject
ClassB* pB=&aObject
ClassC* pC=&aObject
关于pA,pB,pC的取值,下面的描述中正确的是:





19.
关于Http和Https,下面说法正确的是:
问题详情





20.
在定义int a[2][3];下面对a的引用正确的有?
问题详情

在定义int a[2][3];下面对a的引用正确的有()




21.
以下哪些是iOS沙盒目录里的文件夹?
问题详情




22.
密码破译
问题详情

我们来做一个简单的密码破译游戏。破译的规则很简单,将数字转换为字母,1转化为a,2转化为b,依此类推,26转化为z。现在输入的密码是一串数字,输出的破译结果是该数字串通过转换规则所能产生的所有字符串。 输入描述: 多行数据,每行为一个数字串。
保证数字串的总长度不超过1000,每行数据的答案至少有1个且不超过1000个。输入样例: 1 12 123 输出描述: 多行数据,每行对应输出通过数字串破译得到的所有字符串,并按照字符串顺序排列,字符串之间用单个空格分隔。每行开头和结尾不允许有多余的空格。输出样例 a ab l abc aw lc