「精选推荐」马上金三银四了,盘点面试时问的那些高频代码面试题
前言
不管是初级还是中级测试工程师,现在的岗位要求都在要求自动化的能力了。当然高级测试工程师就更不用说了。
那既然岗位要求,面试时就必不可少会问到代码能力。本篇文章就给大家把基础的代码面试题整理出来了。
然后我是希望大家如果基础薄弱,就死记硬背也给背下来。有能力的话就要去研究一下里面的实现逻辑。
1、冒泡排序
# 冒泡排序# 记住,排序是升序排!# 原理:从左到右,依次比对相邻的两个数,数大的排后面,数小的排前面# 比如,11,13,12,10,14,那么最终要形成的是10,11,12,13,14list1= [11,13,12,10,14]le = len(list1)def bubble_sort(list1): # 遍历列表长度减1次 for j in range(1,le): # 创建一个变量,用来记录本轮冒泡,是否有数据交换位置 status = False # 每次遍历都获取第一个元素,依次和后面的元素进行比较 for i in range(0,le-j): # 前一位数 > 后一位数。交换位置。 if list1[i] > list1[i 1]: list1[i],list1[i 1] = list1[i 1],list1[i] # 只要由数据交换位置,则修改statusd的值 status = True # 每一轮冒泡结束之后,判断当前status是否为Flase, # 如果为Flase,则说明上一轮冒泡没有修改任何数据的顺序(即数据是有序的) if not status: return list1 return list1
2、99 乘法表
for row in range(1,10): for index in range(1,row 1): print(f'{index}*{row}={index * row}',end="t") print()
3、使用 print 函数和循环结构输出如下由*组成的金字塔
'''使用print函数和循环结构输出如下由*组成的金字塔 * *** ************'''max_level = 4for row in range(1,max_level 1): space_count = max_level - row star_count = row * 2 -1 for item in range(space_count): print(" ",end="") for item in range(star_count): print("*",end="") print()
4、对 list 去重并找出 list 中的重复元素
'''如果只是给列表去重,用set()集合即可但是要找出重复的元素就不行了'''from collections import Counter #引入Countera = [1, 2, 3, 3, 4, 4]b = dict(Counter(a))print(b) # 统计元素出现次数print ([key for key,value in b.items() if value > 1]) #只展示重复元素print ({key:value for key,value in b.items() if value > 1}) #展现重复元素和重复次数
5、获取一个 100 以内偶数的纯数字序列,并存到列表里,然后求这些偶数数字的和。
def add_fun(data): sum = 0 list = [] for num in range(2,data,2): list.append(num) sum = num return sum,listresult = add_fun(100)print('100以内的偶数之和为{},n生成的偶数列表为:{}'.format(result[0],result[1]))
6、用 Python 中写出 1 加到 100 的算法
sum = 0for i in range(1,101): sum = iprint(sum)
7、求 100-999 的水仙花数
'''水仙花数是指一个n位的正整数(n>=3),它的每个数字的n次幂之和等于它本身。例如: 153=1*1*1 5*5*5 3*3*3153为三位数,它的每个数字的三次方之和等于153。'''# 分析过程:将正整数n的个位十位百位分别取出,再求幂之和;个位百位比较好拆分,十位的话可以先减去百位再用除法计算。print("100-999之间的水仙花数为:")for a in range(100, 999): i = int(a % 10) # 取出个位 j = int(a / 100) # 取出百位 k = int((a - j * 100)/10) # 取出十位 if i**3 j**3 k**3 == a: # 计算幂之和,与数本身进比较判断 print(a)
作为前辈我不确定我现在给出的一定百分百正确,但至少能让你少走一点弯路。
这是我给大家整理的从0到月薪15k的软件测试学习路线,通用性极强
软件测试学习知识点汇总
软件测试所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
温馨提示:篇幅有限,已打包文件夹,获取方式在:私信关键词“资料”
软件测试必备工具
安装包都给你打包好了,直接安装。
精品软件测试学习书籍
当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路
软件测试学习视频
观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
项目实战
光学理论是没用的,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战项目来学习。
面试刷题
学习路线
写在最后
三个月足够,不裸辞也够,除非你现在工作忙到每天回家倒头就睡。
问题不在于三个月够不够,而是你能不能坚持。
裸辞的好处是干扰更小,坏处是压力更大,看你是哪种类型的性格,再决定是背水一战还是骑驴找马。
有的人可以边工作边做别的事,但不是所有人都能做到。
同样,没有工作也不是所有人能接受的状态。
最后就是,别定太高目标。既然决心转行,就做好从零开始的准备
所有上述系统资料都可以私信我关键词“资料”获取
以上,祝好。