- 博客(6)
- 收藏
- 关注
原创 【思特奇杯·编程之星】初赛
A:门牌制作count = 0for i in range(1,2021): count += str(i).count("2")print(count)B:既约分数def check(a,b): if b == 0 or a == 0: return "Error" else: while a%b != 0: a,b = b,a%b return bdef check_more(a,b
2022-01-24 22:06:42 289
原创 【思特奇杯·云上蓝桥-算法集训营】第三周
菲波那切数列class Solution(object): def fib(self, n): if n<2: return n else: return self.fib(n-1)+self.fib(n-2)第N个泰波那契数class Solution(object): def tribonacci(self, n)->int: if n == 0:
2022-01-21 21:06:02 357
原创 【思特奇杯·云上蓝桥-算法集训营】第二周
带分数def add_grades(n): i = 1 time = 0 while i < n-1: grades = n - i for x in range(1,1000): denominator = x numerator = x * (n - i) ls = [] for j in str(i): ls
2022-01-15 11:24:50 342
原创 堆排序Python实现
关于堆排序的相关知识,在数据结构的排序算法中,堆排序可以说是一个比较难的算法,理解起来有点困难,所以要想掌握堆排序,得先了解一下几个数据结构:首先,我们要知道完全二叉树,先看图:完全二叉树:设二叉树的深度为h,除第 h 层外,其它各层 (1~h-1) 的结点数都达到最大个数,第 h 层所有的结点都连续集中在最左边满二叉树:深度为k且有2^k-1个结点的二叉树称为满二叉树知道了完全二叉树后,我们来了解堆:堆积是一个近似完全二叉树的结构,并同时满足堆积的性质:即子结点的键值或索引总
2022-01-07 22:00:16 1127
原创 【思特奇杯·云上蓝桥-算法集训营】第一周
第一题:跑步训练s = 10000v1 = 600 v2 = 300use = v1 - v2 #表示二分钟消耗的体力t1 = (s // use) -1t2 = s - use*t1 #t1分钟后剩下的体力v3 = v1 // 60 #表示每休息一秒钟消耗的体力time = t1*2 *60 + t2 // v3print(time)第二题:阶乘约数n = int(input())res = set()for i in range(1,n+1): fo
2022-01-06 20:32:46 331
原创 归并排序python实现
归并排序(英语:Merge sort,或mergesort),是创建在归并操作上的一种有效的排序算法。该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。分治法:分割:递归地把当前序列平均分割成两半。 集成:在保持元素顺序的同时将上一步得到的子序列集成到一起(归并)。一.方法思想归并排序(MergeSort)的基本思想是:将待排序文件看成为n个长度为1的有序子文件,把这些子文件两两归并,使得到「n/2」个长度为2的有序子文件;然后再把这「n/2」个有序文件的子文件
2022-01-03 13:57:15 1365
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人