测试开发笔试题(python)

这篇博客主要涵盖Python字符串操作和数组、链表题目。对于字符串,讲解了子串判断、最大长度子串、回文检测和子序列判断等。在数组和链表部分,介绍了二维数组查找、删除排序数组重复项、移除元素、搜索插入位置、两数之和等问题,以及链表相关操作如合并、删除重复元素和节点反转等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、字符串有关题目

主要涉及字符串的基础操作,同时还要明白几个概念:子串、回文、子序列,这些问题出现的概率比较大

1、字符串是否包含某个子串

方法一:使用in

s = ‘nihao,shijie’
t = ‘nihao’
result = t in s
print(result) //返回True表示包含

方法二:使用string模块的 index() 方法

import string
def find(s,t):
	try:
		string.index(s,t)
		return True
	except(ValueError):
		return False

s = ‘nihao,shijie’
t = ‘nihao’
result = find(s,t)
print(result)

2、字符串中最大长度子串

如字符串abcd13agbf,当重复出现某个字符时,算一个子串,比如abcd13a或bcd13agb都是子串

les_list= []
length = len(str)
for i in range(length):
   tmp = str[i] //当前查找的字符串tmp
   for j in range(i+1,length):
  	    if str[j] not in tmp:
  		    tmp += str1[j] //如果tmp后面字符串与前面字符串不重复则字符串相加
  	    else:
  		    break
  	res_list.append(tmp)
res_list.sort(lambda x,y:operator.eq(len(x),len(y))//按照长度升序排序  #python2 cpm函数用于比较2个对象,python3被operator模块代替
return res_list[-1]

3、是否是回文

方法一:反转reversed()函数,判断是否相等
例如 “abccba” 是一个回文

s="abccba"
a = reversed(list(s))
if list(a) == list(s):
    print('是回文')
else:
    print('不是回文')

方法二:利用递归

def ishui(s):
	if len(s)<2:
		return True
	if s[
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值