python 面试算法题
1.第一题
题目描述:给定两个字符串, s 和 goal。如果在若干次旋转操作之后,s 能变成 goal ,那么返回 true 。 s 的 旋转操作 就是将 s 最左边的字符移动到最右边。 例如, 若 s = 'abcde',在旋转一次之后结果就是'bcdea' 。 示例一: 输入: s = "abcde", goal = "cdeab" 输出: True 示例二: 输入: s = "abcde", goal = "abced" 输出: False
def t(str1,nums):goal = str1[nums:] + str1[:nums]# print(goal)if str(a) == str(goal):return Trueelif str(a) != str(goal):return Falseif __name__ == '__main__':#第一题str1 = "abcde"for i in range(len(str1)):a = input(f"第{i}次请输入:")print(t(str1,i))
2.10以内的质数
def zs(n):if isinstance(n,int) and n%2!=0 and n>0 and n != 1 :return nif __name__ == '__main__':a = []for i in range(1,11):if zs(int(i)) is not None:a.append(zs(int(i)))print(a)