今天来聊聊小编的一次真实 Python 面试经历,首先我挺喜欢这家公司的面试风格的,也是比较务实的吧。无奈自己的心理因素和技术水平都不好,导致面试失败。再接再厉!

1.一上来就是编程题三连

1.1 大概意思就是:俩列表a b,如果a中的元素在b中,那么就保存此元素在a中的索引值,最后统一输出所有索引值。要求:时间复杂度小于O(n)

这个我当时想到的是循环遍历a,然后判断是否i in b,但是这个时间复杂度是O(n2),GG。最后面试官提醒了我一下hashmap,瞬间捶胸顿足……。最后自己想了一下,可以将b先转成字典,然后再使用in。

a = [5,3,1,5,4]

b = [5,3]

d = {}for i in b:

d[i] = 0

res =l = len(a)

for i in range(l):

if a[i] in d:

res.append(i)

print(res)

1.2 如图,输入为这样,输出为那样,写吧……

输入几组数据,pid为-1的代表根节点。如果数据为非根节点,那么就要搜索此节点直至找到根节点。

这个其实我知道考的是树的遍历,但是没见过这种形式的题,要自己构建输入数据的形式,一下子就懵了,再加上面试官在那一直盯着……唉,承认自己能力不足吧。后续自己写了一遍,大家可以看一下,有问题直接下面评论就可以。

d = {

"A":"-1",

"A-1":"A",

"A-2":"A",

"A-3":"A",

"A-2-1":"A-2",

"A-2-2":"A-2",

"A-2-3":"A-2"

}res =def func(node):

array.append(node[0])

if node[1] == "-1":

returnfunc((node[1],d[node[1]]))

for i in d.items:

array =func(i)

string = "/".join(array[::-1])

res.append("/"+string)

for j in res:

print(j)

1.3 这个题太经典了。最短路径和。

要注意是从第一行走到最后一行,而且只能向下或者斜向下走(我当时没看清就写,写成了从左上走到右下……)。我这里写的是动态规划的解法。Leetcode上有原题,解法不唯一。

array = [[1,8,5,2],

[4,1,7,3],

[3,6,2,9]]

x = len(array)y = len(array[0])

dp = [[0 for i in range(y)] for j in range(x)]

# 遍历顺序是每行内的每列。所以遍历array中第一行只执行到if,dp中第一行就确定了,然后再确定dp第二行。# 要注意两个边界条件for i in range(x):for j in range(y):if i == 0:dp[i][j] = array[i][j]

elif j == 0:dp[i][j] = array[i][j] + min(dp[i-1][j], dp[i-1][j+1])

elif j == y-1:dp[i][j] = array[i][j] + min(dp[i-1][j-1],dp[i-1][j])

else:dp[i][j] = array[i][j] + min(dp[i-1][j-1],dp[i-1][j],dp[i-1][j+1])

# [[1, 8, 5, 2],# [5, 2, 9, 5],# [5, 8, 4, 14]]print(min(dp[-1]))# 4

2.其他面试问题

这里就不写答案了,大家可以百度或google一下。

2.1 什么是事务,事务的出现是为了解决什么问题

2.2 什么是聚簇索引

2.3 假如没有主键,InnoDB会以哪个字段建立主键

2.3 聊聊RabbitMQ中的connection与channel的关系,还有建立channel的一些规范或注意事项。

大学 python 试讲_聊聊一次真实的 Python 面试经历(笔试)相关推荐

  1. python 单元测试_聊聊 Python 的单元测试框架(一):unittest

    本文首发于 HelloGitHub 公众号,并发表于 Prodesire 博客. 前言 说到 Python 的单元测试框架,想必接触过 Python 的朋友脑袋里第一个想到的就是 unittest. ...

  2. 免费学python编程_强力推荐,非常全的 Python编程学习资料(今日免费)

    因为大数据和 AI,Python 一跃成为最火的语言,这里推荐几本畅销排行榜上的好书. 有需要在我的头条号,私信我,"Python",即可免费领取. 一.Python基础教程 &l ...

  3. 安卓 python解释器_大牛教你如何用Python 实现 Python 解释器

    1. Python解释器 这里的Python解释器具体是指什么呢?有时候我们会把Python的REPL(命令行下Python的交互环境)当作解释器,有时候Python解释器这一说法可以指代整个Pyth ...

  4. 风云编程python怎么样_二十年编程语言风云,看Python如何一步步往上爬!

    作者 | 周萝卜 来源 | 萝卜大杂烩 年终岁尾了,编程语言也要决出这一年的最佳语言了,会是谁呢,从 TIOBE 上来看,Java.C 和 Python 基本锁定了前三的位置,Java 江湖老大的地位 ...

  5. flask执行python脚本_如何在Flask中运行python脚本

    我有一个Flask脚本,可以创建网站并动态打印一些数据.-打印的数据应来自另一个python脚本. 我目前面临的问题是,如果我将执行python脚本的行放在执行Flask应用程序的行之前,它将运行Py ...

  6. 苹果系统安装python环境_如何在mac下配置python虚拟环境

    安装python虚拟环境核心目的就是为了复制一个python环境,这样新项目下载的所有包,都会存放在虚拟环境下的python site-package 中 首先安装 1. sudo pip insta ...

  7. 量化投资与python语言_在量化投资领域,为什么Python如此受欢迎?

    说起Web领域 你立马会想到JavaScript语言,它在Web领域不可撼动:Python也已经在金融量化投资领域占据了重要位置,从各个业务链条都能找到相应的框架实现. 在量化投资(证券和比特币)开源 ...

  8. 小猿圈python视频_小猿圈分享学习Python的最佳方式

    原标题:小猿圈分享学习Python的最佳方式 python现在是世界上功能最多的编程语言之一,可以是用Python编辑应用程序,游戏.算法程序.还可以编程一个机器人,学习Python可以担任软件工程师 ...

  9. 下载anaconda前需要卸载python吗_装了anaconda要卸载python吗

    装了anaconda其实是可以选择卸载python,当然也可以不卸载.Anaconda 是Python的一个发行版,里面内置了很多工具,不用单独安装,因为做了优化也免去了单独安装带来的一些麻烦. An ...

最新文章

  1. Bootstrap系列 -- 6. 列表
  2. 计算机知识新闻稿,文科计算机大赛新闻稿
  3. android 刷卡布局,刷卡布局效果-开源AndroidSwipeLayout使用解析(二)
  4. OpenCV 凸包Convex Hull
  5. 分布式与人工智能课程(part5)--第五课
  6. php mvc多态实例,asp.net mvc-多态模型绑定
  7. c语言水仙花验证,[编程入门]水仙花数判断 (C语言代码)
  8. 全局路径规划:图搜索算法介绍3(A stars tie breaker)
  9. 如何把Sql Server2005 数据库转换成Access
  10. IIS上部署网站问题总结
  11. HTML实现三级导航菜单栏
  12. vs2010中svn使用教程_VS2010中使用ankhSVN
  13. 2018PS cc版本最新最实用学习笔记
  14. 【Elasticsearch】优秀实践-Elasticsearch查询调优
  15. linux pv 信号量,pv操作与信号量(示例代码)
  16. HttpClient发送POST和GET请求
  17. 易课寄在线购课系统开发笔记(三)--数据库设计
  18. 汉语拼音拼读的小技巧
  19. 互联网行业薪酬分析,快来看看做什么最赚钱!
  20. 基于微信小程序的设备报修系统源码

热门文章

  1. Jdk下载需要登录账号解决
  2. python爬虫学习日记(1) scrapy爬取时,报错Filtered offsite request
  3. IE浏览器不用迅雷下载
  4. ABAP选择结构自己做的练习题
  5. 微信小程序云开发——实现 线上注册,登录的逻辑,并保存账号到云数据库( 二 ):注册
  6. Unity UI界面设计方法
  7. 仿天天动听5应用项目源码
  8. Inkspace1.0 插件(1) HelloWorld python例子
  9. magento 2 di.xml etc/ etc/area_code/ 区别
  10. 广东省b级计算机试题及答案,全国计算机等级考试一级B模拟试题及答案