前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python面试题大全(五):测试、大数据、数据结构、架构

Python面试题大全(五):测试、大数据、数据结构、架构

作者头像
不吃西红柿
发布2022-07-29 09:57:43
3490
发布2022-07-29 09:57:43
举报
文章被收录于专栏:信息技术智库

目录

测试

213.编写测试计划的目的是

214.对关键词触发模块进行测试

215.其他常用笔试题目网址汇总

216.测试人员在软件开发过程中的任务是什么

217.一条软件Bug记录都包含了哪些内容?

218.简述黑盒测试和白盒测试的优缺点

219.请列出你所知道的软件测试种类,至少5项

220.Alpha测试与Beta测试的区别是什么?

221.举例说明什么是Bug?一个bug report应包含什么关键字?

数据结构

222.数组中出现次数超过一半的数字-Python版

223.求100以内的质数

224.无重复字符的最长子串-Python实现

225.通过2个5/6升得水壶从池塘得到3升水

226.什么是MD5加密,有什么特点?

227.什么是对称加密和非对称加密

228.冒泡排序的思想?

229.快速排序的思想?

230.如何判断单向链表中是否有环?

231.你知道哪些排序算法(一般是通过问题考算法)

232.斐波那契数列

233.如何翻转一个单链表?

234.青蛙跳台阶问题

235.两数之和 Two Sum

236.搜索旋转排序数组 Search in Rotated Sorted Array

237.Python实现一个Stack的数据结构

238.写一个二分查找

239.set 用 in 时间复杂度是多少,为什么?

240.列表中有n个正整数范围在[0,1000],进行排序;

241.面向对象编程中有组合和继承的方法实现新的类

大数据

242.找出1G的文件中高频词

243.一个大约有一万行的文本文件统计高频词

244.怎么在海量数据中找出重复次数最多的一个?

245.判断数据是否在大量数据中

架构

Python后端架构演进


测试

213.编写测试计划的目的是

214.对关键词触发模块进行测试

215.其他常用笔试题目网址汇总

216.测试人员在软件开发过程中的任务是什么

217.一条软件Bug记录都包含了哪些内容?

218.简述黑盒测试和白盒测试的优缺点

219.请列出你所知道的软件测试种类,至少5项

220.Alpha测试与Beta测试的区别是什么?

221.举例说明什么是Bug?一个bug report应包含什么关键字?

数据结构

222.数组中出现次数超过一半的数字-Python版

223.求100以内的质数

224.无重复字符的最长子串-Python实现

225.通过2个5/6升得水壶从池塘得到3升水

226.什么是MD5加密,有什么特点?

227.什么是对称加密和非对称加密

228.冒泡排序的思想?

229.快速排序的思想?

230.如何判断单向链表中是否有环?

231.你知道哪些排序算法(一般是通过问题考算法)

232.斐波那契数列

**数列定义: **

f 0 = f 1 = 1 f n = f (n-1) + f (n-2)

根据定义

速度很慢,另外(暴栈注意!⚠️️) O(fibonacci n)

代码语言:javascript
复制
def fibonacci(n):
    if n == 0 or n == 1:
        return 1
    return fibonacci(n - 1) + fibonacci(n - 2)

线性时间的

状态/循环

代码语言:javascript
复制
def fibonacci(n):
   a, b = 1, 1
   for _ in range(n):
       a, b = b, a + b
   return a

递归

代码语言:javascript
复制
def fibonacci(n):
    def fib(n_, s):
        if n_ == 0:
            return s[0]
        a, b = s
        return fib(n_ - 1, (b, a + b))
    return fib(n, (1, 1))

map(zipwith)

代码语言:javascript
复制
def fibs():
    yield 1
    fibs_ = fibs()
    yield next(fibs_)
    fibs__ = fibs()
    for fib in map(lambad a, b: a + b, fibs_, fibs__):
        yield fib
        
        
def fibonacci(n):
    fibs_ = fibs()
    for _ in range(n):
        next(fibs_)
    return next(fibs)

Logarithmic

矩阵

代码语言:javascript
复制
import numpy as np
def fibonacci(n):
    return (np.matrix([[0, 1], [1, 1]]) ** n)[1, 1]

不是矩阵

代码语言:javascript
复制
def fibonacci(n):
    def fib(n):
        if n == 0:
            return (1, 1)
        elif n == 1:
            return (1, 2)
        a, b = fib(n // 2 - 1)
        c = a + b
        if n % 2 == 0:
            return (a * a + b * b, c * c - a * a)
        return (c * c - a * a, b * b + c * c)
    return fib(n)[0]

233.如何翻转一个单链表?

代码语言:javascript
复制
class Node:
    def __init__(self,data=None,next=None):
        self.data = data
        self.next = next
        
def rev(link):
    pre = link
    cur = link.next
    pre.next = None
    while cur:
        temp  = cur.next
        cur.next = pre
        pre = cur
        cur = tmp
    return pre

if __name__ == '__main__':
    link = Node(1,Node(2,Node(3,Node(4,Node(5,Node(6,Node7,Node(8.Node(9))))))))
    root = rev(link)
    while root:
        print(roo.data)
        root = root.next

234.青蛙跳台阶问题

一只青蛙要跳上n层高的台阶,一次能跳一级,也可以跳两级,请问这只青蛙有多少种跳上这个n层台阶的方法?

方法1:递归

设青蛙跳上n级台阶有f(n)种方法,把这n种方法分为两大类,第一种最后一次跳了一级台阶,这类共有f(n-1)种,第二种最后一次跳了两级台阶,这种方法共有f(n-2)种,则得出递推公式f(n)=f(n-1) + f(n-2),显然f(1)=1,f(2)=2,这种方法虽然代码简单,但效率低,会超出时间上限

代码语言:javascript
复制
class Solution:
    def climbStairs(self,n):
        if n ==1:
            return 1
        elif n==2:
            return 2
        else:
            return self.climbStairs(n-1) + self.climbStairs(n-2)

方法2:用循环来代替递归

代码语言:javascript
复制
class Solution:
    def climbStairs(self,n):
        if n==1 or n==2:
            return n
        a,b,c = 1,2,3
        for i in range(3,n+1):
            c = a+b
            a = b
            b = c
        return c

235.两数之和 Two Sum

236.搜索旋转排序数组 Search in Rotated Sorted Array

237.Python实现一个Stack的数据结构

238.写一个二分查找

239.set 用 in 时间复杂度是多少,为什么?

240.列表中有n个正整数范围在[0,1000],进行排序;

241.面向对象编程中有组合和继承的方法实现新的类

大数据

242.找出1G的文件中高频词

243.一个大约有一万行的文本文件统计高频词

244.怎么在海量数据中找出重复次数最多的一个?

245.判断数据是否在大量数据中

架构

Python后端架构演进

这篇文章几乎涵盖了python会用的架构,在面试可以手画架构图,根据自己的项目谈下技术选型和优劣,遇到的坑等。绝对加分

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-05-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 测试
    • 213.编写测试计划的目的是
      • 214.对关键词触发模块进行测试
        • 215.其他常用笔试题目网址汇总
          • 216.测试人员在软件开发过程中的任务是什么
            • 217.一条软件Bug记录都包含了哪些内容?
              • 218.简述黑盒测试和白盒测试的优缺点
                • 219.请列出你所知道的软件测试种类,至少5项
                  • 220.Alpha测试与Beta测试的区别是什么?
                    • 221.举例说明什么是Bug?一个bug report应包含什么关键字?
                    • 数据结构
                      • 222.数组中出现次数超过一半的数字-Python版
                        • 223.求100以内的质数
                          • 224.无重复字符的最长子串-Python实现
                            • 225.通过2个5/6升得水壶从池塘得到3升水
                              • 226.什么是MD5加密,有什么特点?
                                • 227.什么是对称加密和非对称加密
                                  • 228.冒泡排序的思想?
                                    • 229.快速排序的思想?
                                      • 230.如何判断单向链表中是否有环?
                                        • 231.你知道哪些排序算法(一般是通过问题考算法)
                                          • 232.斐波那契数列
                                            • 233.如何翻转一个单链表?
                                              • 234.青蛙跳台阶问题
                                                • 235.两数之和 Two Sum
                                                  • 236.搜索旋转排序数组 Search in Rotated Sorted Array
                                                    • 237.Python实现一个Stack的数据结构
                                                      • 238.写一个二分查找
                                                        • 239.set 用 in 时间复杂度是多少,为什么?
                                                          • 240.列表中有n个正整数范围在[0,1000],进行排序;
                                                            • 241.面向对象编程中有组合和继承的方法实现新的类
                                                            • 大数据
                                                              • 242.找出1G的文件中高频词
                                                                • 243.一个大约有一万行的文本文件统计高频词
                                                                  • 244.怎么在海量数据中找出重复次数最多的一个?
                                                                    • 245.判断数据是否在大量数据中
                                                                    • 架构
                                                                      • Python后端架构演进
                                                                      领券
                                                                      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档