• 11.11练习题


    1.不死兔子

    1. def fib(n):
    2. if n <= 4:
    3. return 1
    4. else:
    5. return fib(n-1) + fib(n-2)
    6. print("一年后共繁殖{}对兔子".format(fib(12)))

    2.输入字符串,判断该字符串是否是回文字符串

    1. s = input("请输入一个字符串:")
    2. if not s:
    3. print("请不要输入空字符串!")
    4. s = input("请重新输入一个字符串:")
    5. a = reversed(list(s))
    6. if list(a) == list(s):
    7. print("该字符串是回文")
    8. else:
    9. print("该字符串不是回文")

    3.给定一个正整数N,找出1到N(含)之间所有质数的总和

    1. def zhishu(n):
    2. #判断是否是质数
    3. for i in range(2, n // 2 + 1):
    4. if n % i == 0:
    5. return False
    6. return True
    7. n = int(input("输入你想要的正整数:"))
    8. num = 0
    9. for i in range(2, n):
    10. if zhishu(i):
    11. num += i
    12. print(f"质数的总和:{num}")

    4.求  a+aa+aaa+.......+aaaaaaaaa=?其中a为1至9之中的一个数,项数也要可以指定。

    1. a = int(input("请输入所相加的数字:"))
    2. b = int(input("请输入相加的次数:"))
    3. temp = ""
    4. res = 0
    5. for i in range(b):
    6. temp = temp + "1"
    7. res = res + a * int(temp)
    8. print(res)

    5.合并两个有序数组,合并后还是有序列表

    1. a = [1,2,3,8,9,10]
    2. b = [2,6,8,14,50,60]
    3. def merge2(a, b):
    4. la,lb = len(a), len(b)
    5. c = []
    6. i = j = 0
    7. while i and j < lb:
    8. if a[i] < b[i]:
    9. c.append(a[i])
    10. i += 1
    11. else:
    12. c.append(b[j])
    13. j += 1
    14. if i < la:
    15. c.extend(a[i:])
    16. if j < lb:
    17. c.extend(b[j:])
    18. return c
    19. print(merge2(a, b))

    6.给定一个非负整数数组A,将该数组中的所有偶数都放在奇数元素之前

    1. #给定一个非负整数数组A,将该数组中的所有偶数都放在奇数元素之前
    2. def even_before_odd(ls=[]):
    3. '''
    4. 将一个非负整数数组中的所有偶数都放在奇数元素之前
    5. '''
    6. for i in range(len(ls)):
    7. if ls[i] % 2 != 0:
    8. for j in range(i + 1, len(ls)):
    9. if ls[j] % 2 == 0:
    10. ls[i], ls[j] = ls[j], ls[i]
    11. break
    12. return ls
    13. ls = [1, 2, 3, 4, 5, 6, 7, 8, 9]
    14. print(f'原列表为:{ls}')
    15. print(f'将偶数置于奇数前,列表变为:{even_before_odd(ls)}')

    7.给定一个非负整数数组A,该数组的元素都是从1~N的元素组成,现在发现其中确实一个,请找出这个确实的元素

    1. [1,3,1,2,2,8,8]
    2. def notpair(ls):
    3. '''
    4. 找出不成对的元素
    5. '''
    6. temp = 0
    7. for i in ls:
    8. temp ^= i
    9. return temp
    10. ls = [1, 4, 1, 3, 3, 8, 9, 8, 9]
    11. print(f'{ls}中不成对的元素为:{notpair(ls)}')

  • 相关阅读:
    基于文化算法优化的神经网络预测研究(Matlab代码实现)
    Apache Doris 基础 -- 部分数据类型及操作
    彩色年终工作总结汇报PPT模板下载
    可见光通信(毕业设计)
    如何提高接口测试覆盖率?
    java之二分查找算法
    任意文件读取
    Nginx(反向代理,负载均衡,动静分离)
    【Vue3】--setup两个属性+computed+watch【练习代码已上传至Gitee】
    网站TDK采集工具-网站的TDK设置方法
  • 原文地址:https://blog.csdn.net/m0_74355247/article/details/134470254