北京同城必应科技有限公司5月招聘面试题180道2020515

与正则表达式“^ab[a-z]*c”匹配的字符串是()。

A、abdec

B、abc

C、ab0c

D、cabc


参考答案:A


请编写一个函数int pattern_index(char substr[],char str[]),该函数执行含通配符“?”的字符串的查找时,该通配符可以与任一个字符匹配成功。当子串substr在str中匹配查找成功时,返回子串substr在str中的位置,否则返回值为0。要求使用 for循环实现。输出结果如下:

子串起始位置:5

注意:部分源程序已存在文件test20_2.cpp中。

请勿修改主函数main和其他函数中的任何内容,仅在函数pattern_index的花括号中填写若干语句。

文件test20_2.cpp的内容如下:

include<iostream.h>

int pattern_index(char substr[],char str[])

{

}

void main ( )

{

char *substring,*string;

int same;

substring="???gram";

string="this program return index of substring";

same=pattern_index(substring, string);

if(same)

cout<<"子串起始位置: "<<same<<end1;

else

cout<<"匹配不成功" <<end1;

}


正确答案:int pattern_index(char substr[]char str[]) { int ijk; for(i=0;str[i];i++) for(j=ik=0;(str[j]==substr[k])||(substr[k]=='?');j++k++) if(!substr[k+1]) return(i); return(0); }
int pattern_index(char substr[],char str[]) { int i,j,k; for(i=0;str[i];i++) for(j=i,k=0;(str[j]==substr[k])||(substr[k]=='?');j++,k++) if(!substr[k+1]) return(i); return(0); } 解析:本题主要考查的是考生使用for循环和一维数组的综合能力。对于复杂查找,往往使用for的多重循环,注意里层for循环用来查找字符串的使用


正则表达式元字符“^”一般用来表示从字符串开始处进行匹配,用在一对方括号中的时候则表示反向匹配,不匹配方括号中的字符。

此题为判断题(对,错)。


正确答案:√


正则表达式模块re的match()方法是从字符串的开始匹配特定模式,而search()方法是在整个字符串中寻找模式,这两个方法如果匹配成功则返回match对象,匹配失败则返回空值None。

此题为判断题(对,错)。


正确答案:√


list(map(str,[1,2,3]))的执行结果为_____________________。


正确答案:[‘1’,‘2’,‘3’]


北京同城必应科技有限公司5月招聘面试题面试题面试官常问到的一些题目整理如下:问题 Q1:def func(a,b=) 这种写法有什么坑?可用的回答 : def func(a,b=): b.append(a) print(b) func(1) func(1) func(1) func(1) 如:看下结果 1 1, 1 1, 1, 1 1, 1, 1, 1 函数的第二个默认参数是一个list,当第一次执行的时候实例化了一个list,第二次执行还是用第一次执行的时候实例化的地址存储, 所以三次执行的结果就是 1, 1, 1 ,想每次执行只输出1 ,默认参数应该设置为None。 问题 Q2:什么是正则的贪婪匹配?可用的回答 : 如: str=abcaxc; p=ab.*c; 贪婪匹配:正则表达式一般趋向于最大长度匹配,也就是所谓的贪婪匹配。 如上面使用模式p匹配字符串 str,结果就是匹配到:abcaxc(ab.*c)。 非贪婪匹配:就是匹配到结果就好,就少的匹配字符。 如上面使用模式p匹配字符串str,结果就是匹配 到:abc(ab.*c) 问题 Q3:单引号,双引号,三引号的区别?可用的回答 : 单引号和双引号是等效的,如果要换行,需要符号(),三引号则可以直接换行,并且可以包含注释 如果要表示Lets go 这个字符串 单引号:s4 = Lets go 双引号:s5 = “Lets go” s6 = I realy like“python”! 这就是单引号和双引号都可以表示字符串的原因了 问题 Q4: Django重定向你是如何实现的?用的什么状态码?可用的回答 : 使用HttpResponseRedirect redirect和reverse 状态码:302,301 问题 Q5:有哪些工具可以帮助查找错误或执行静态分析?可用的回答 : PyChecker是一个静态分析工具,可以检测Python源代码中的错误,并警告错误的风格和复杂性。 Pylint是另一种验证模块是否符合编码标准的工具。 auto-pep8工具也可以进行静态代码检查 问题 Q6: scrapy分为几个组成部分?分别有什么作用?可用的回答 : 分为5个部分; 1. Spiders(爬虫类) 2. Scrapy Engine(引擎) 3. Scheduler(调度器) 4. Downloader(下载器) 5. Item Pipeline(处理管道) 具体来说: Spiders:开发者自定义的一个类,用来解析网页并抓取指定url返回的内容。 Scrapy Engine:控制整个系统的数据处理流程,并进行事务处理的触发。 Scheduler:接收Engine发出的requests,并将这些requests放入到处理列队中,以便之后engine需要时再提供。 Download:抓取网页信息提供给engine,进而转发至Spiders。 Item Pipeline:负责处理Spiders类提取之后的数据。 比如清理HTML数据、验证爬取的数据(检查item包含某些字段)、查重(并丢弃)、将爬取结果保存到数据库中 问题 Q7:描述数组、链表、队列、堆栈的区别?可用的回答 : 数组与链表是数据存储方式的概念,数组在连续的空间中存储数据,而链表可以在非连续的空间中存储数据; 队列和堆栈是描述数据存取方式的概念,队列是先进先出,而堆栈是后进先出; 队列和堆栈可以用数组来实现,也可以用链表实现。 问题 Q8:大数据的文件读取?可用的回答 : 1. 利用生成器generator 2. 迭代器进行迭代遍历:for line in file 问题 Q9:常见的HTTP方法有哪些?可用的回答 : GET:请求指定的页面信息,返回实体主体; HEAD:类似于get请求,只不过返回的响应中没有具体的内容,用于捕获报头; POST:向指定资源提交数据进行处理请求(比如表单提交或者上传文件),。数据被包含在请求体中。 PUT:从客户端向服务端传送数据取代指定的文档的内容; DELETE:请求删除指定的页面; CONNNECT:HTTP1.1协议中预留给能够将连接方式改为管道方式的代理服务器; OPTIONS:允许客户端查看服务器的性能; TRACE:回显服务器的请求,主要用于测试或者诊断。 问题 Q10:python提供的内置类型是什么?可用的回答 : 可变类型的内置类型: List Sets Dictionaries 不可变的内置类型: Strings Tuples Numbers 算法题面试官常问到的一些算法题目整理如下(大概率会机考):算题题 A1:合并两个排序过的列表题目描述如下:合并两个排序过的数组。Input: 1-2-4, 1-3-4Output: 1-1-2-3-4-4基本就是你走一步我走一步,一人一个指向。O(n)测试用例:https:/ ListNode(object):# def _init_(self, x):# self.val = x# self.next = Noneclass Solution(object): def mergeTwoLists(self, l1, l2): :type l1: ListNode :type l2: ListNode :rtype: ListNode

执行x = MsgBox("数据类型不匹配",1,"出错提示!") ,然后单击消息框的&qu

执行x = MsgBox("数据类型不匹配",1,"出错提示!") ,然后单击消息框的"取消"按钮,x的值是( )。

A、 True

B、 False

C、 1

D、 2


正确答案:D


正则表达式"^\d{n}$"表示()。

A、匹配最多n位的字符串

B、匹配最多n位的数字

C、只能匹配n位的字符串

D、只能匹配n位的数字


参考答案:D


以下字符串能匹配正则表达式"^[a-z][0-9]$”的是()。

A、a

B、1

C、a1

D、ab


参考答案:C


以下字符串能匹配正则表达式"^.{3}$”的是()。

A、a

B、ab

C、abc

D、abcd


参考答案:C


关于mysql下使用正则表达式的描述错误的是()。

A.MySQL中的正则表达式匹配不区分大小写

B.mysql可以完美支持正则表达式的使用

C.mysql中使用REGEXP关键字来匹配正则

D.正则表达式作用是匹配方本,将一个模式(正则表达式)与一个文本串进行比较。


参考答案:B

更多 “北京同城必应科技有限公司5月招聘面试题180道2020515” 相关考题
考题 关于以下两种陈述,说法正确的是?()陈述1:RegExp的search(str)方法返回字符串中与正则表达式相匹配的字串的位置陈述2:String的test(str)方法用于测试字符串是否与正则表达式相匹配。A、陈述1正确,陈述2错误B、陈述1错误,陈述2正确C、两种陈述都正确D、两种陈述都错误正确答案:D

考题 正则表达式模块re的match()方法是从字符串的开始匹配特定模式,而search()方法是在整个字符串中寻找模式,这两个方法如果匹配成功则返回match对象,匹配失败则返回空值None。正确答案:正确

考题 执行下面的程序,消息框里显示的结果是 【 】 。Private Sub Form_Click()Dim Str As String, K As IntegerStr="ab"For k=Len(Str) TO 1 Step-1Str=Str & Chr(Asc(Mid(Str,k,1))+k)Next kMsgBox StrEnd Sub正确答案:abdbabdb 解析:本题考查VBA程序设计。题目较难,综合性强,要求考生对常用函数以及控制结构有一定的了解。考生应该了解Len()函数是字符串长度检测函数,返回字符串所含字符数。 Chr()函数是字符代码转换字符函数,将数值表达式转换成字符串。Asc()函数是字符串转换字符代码函数,返回字符串首字符的ASCII值。 Mid(字符串表达式>,N1>,N2>)函数是从字符串左边第N1个字符起截取N2个字符。开始Len(Str0=2,Mid(Str,k,1)=Mid(ab,2,1)=b,则Chr(Asc(B) +2)=d,所以循环第1次结束后 Str="abd",同样的第2次循环结束后, Str="abdb",MsSBox用来将Str输出。正确答案为abdb。

考题 单选题该研究采用(  )。A 不匹配设计B 1:1匹配设计C 1:5匹配设计D 1:4匹配设计E 成组匹配设计正确答案:D解析:暂无解析

考题 该研究采用A.不匹配设计B.1:1匹配设计C.1:4匹配设计D.1:6匹配设计E.成组匹配设计正确答案:C

考题 病例对照研究中,( )效率最高A.1:5匹配B.1:3匹配C.1:2匹配D.1:4匹配E.1:1匹配正确答案:D

考题 填空题list(map(str,[1,2,3]))的执行结果为()。正确答案:[‘1’, ‘2’, ‘3’]解析:暂无解析

考题 设char str1[11]="HELLO,",str2[10]=“world”;则执行语句cout设char str1[11]="HELLO,",str2[10]=“world”;则执行语句 cout<<strlen(strcpy(str1,str2)));后的输出结果是 ______。A.12B.11C.7D.5正确答案:D

考题 病例对照研究中,下列哪种匹配效率最高A.1:1匹配 B.1:2匹配 C.1:3匹配 D.1:4匹配 E.1:5匹配答案:D解析:

考题 病例对照研究中,下列哪种匹配效率最高()A、1:1匹配B、1:2匹配C、1:3匹配D、1:4匹配E、1:5匹配正确答案:D