
Python
文章平均质量分 54
咯咯131459
这个作者很懒,什么都没留下…
展开
-
第九届蓝桥杯 乘积尾零 (Python 实现)
第九届蓝桥杯 乘积尾零 (Python 实现)乘积尾零如下的10行数据,每行有10个整数,请你求出它们的乘积的末尾有多少个零?5650 4542 3554 473 946 4114 3871 9073 90 43292758 7949 6113 5659 5245 7432 3051 4434 6704 35949937 1173 6866 3397 4759 7557 3070 2287 1453 98991486 5722 3135 1170 4014 5510 5120 729 2880原创 2021-03-23 12:46:44 · 456 阅读 · 0 评论 -
Fighting-算法-堆排序
""" 堆排序:是一种树形选择排序方法,特点: 在排序的过程中,将L[1...n]看成是一颗完全二叉树的顺序存储结构,利用完全二叉树中双亲结点和孩子结点之间的内在关系, 在当前无序区中选择关键字最大(或最小)的元素。 堆的定义如下: n个关键字序列L[1...n]称为堆,当且仅当该序列满足: 1、 L(i) <= L(2i)...原创 2019-02-21 10:59:32 · 186 阅读 · 0 评论 -
Fighting-算法-简单选择排序
"""选择排序的基本思想: 给定序列 L[1,2,3,...,i,i+1,...,n-1,n], 每一趟(例如地i趟)在后面n-i+1(i=1,2,...,n-1)个待排序的元素中, 选取关键字最小的元素,做为有序子序列的第i个元素,直到第n-1趟排完,待排序元素只剩下一个时结束。简单选择排序思想: 假设排序表为L[1...n]...原创 2019-02-21 10:56:42 · 255 阅读 · 0 评论 -
Fighting-算法-插入排序
"""插入排序思想: 每次将一个待排序的记录,按其关键字大小插入到前面已经排好序的子序列中,直到全部记录插入完成。经典的插入排序:直接插入排序、折半插入排序、希尔排序待排序表L[1...n]在某次排序过程中的某一时刻状态如下“ 有序序列L[1...i-1] L[i] 无序序列L[i+1....n]为了实现将元素L(i)插入到已有序的子序列L[1...i...原创 2019-02-21 10:45:14 · 128 阅读 · 0 评论 -
Fighting-算法-快速排序
"""快速排序的思想是基于分治法的思想:在待排序的表L[1...n]中任意取一个元素pivot作为基准,通过一趟排序将待排序表划分为独立的两部分L[1...k-1] 和 L[k+1...n],使得L[1...k-1]中所有元素小于pivot, L[k+1...n]中所有的元素大于或等于pivot,则pivot放在了其最终位置L[k]上,这个过程称为一趟排序。而后分别对两个子表重复上述过...原创 2019-02-21 10:42:27 · 152 阅读 · 0 评论 -
Fighting-算法-冒泡排序
"""交换排序:根据序列中两个元素关键字的比较结果来兑换这两个记录在序列中的位置。以下是冒泡排序的两种实现:"""def bubbleSort(lists): size = len(lists) if size == 0: return # k 表示lists 的元素个数,有多少个元素就外部迭代多少次。 # 冒泡排序的特点是,每一趟排...原创 2019-02-21 10:33:53 · 130 阅读 · 0 评论 -
Fighting-算法-归并排序
"""归并排序: 归并:将两个或者两个以上的有序表组成一个新的有序表。 2-路归并排序:假定待排序表含有n个记录,则可以看成是n个有序的子表,每个子表的长度为1,然后两辆归并,得到[n/2]个长度为2或者1的有序表。 再两两归并,.....如此重复,知道合成一个长度为n的有序表为止。 二路归并排序(稳定排序),结果升序 算法思想: 2-路归并排序主旨是“...原创 2019-02-21 10:18:01 · 116 阅读 · 0 评论 -
Fighting-算法
看到一篇博客,里面有这样的一段话,深深的触动了我:如果将程序比作人的话,那么数据结构相当于骨架肉体,而算法,则是其思想和灵魂。决定一个人的品质的优劣、境界的高低在于他的思想和灵魂,决定一个程序的性能的高低就在于算法的设计。所以学习算法没有尽头,就像一个有思想的灵魂时时刻刻都不能停止思考一样,so,Fight !...原创 2019-02-21 09:23:29 · 149 阅读 · 0 评论 -
Fighting-算法-基数排序
"""基数排序: 基数排序是一种很特别的排序方法,它不是基于比较进行排序的算法,而是多关键字排序思想。借助‘分配’和‘收集’两种操作, 对单逻辑关键字进行排序。基数排序又分为最高位优先(MSD)排序和最低位优先(LSD)排序。 MSD:先从高位开始进行排序,对每个关键字,可采用计数排序 LSD:先从低位开始进行排序,对每个关键字,可采用桶排序...原创 2019-02-23 14:22:50 · 177 阅读 · 0 评论 -
Fighting-算法-桶排序
"""桶排序基本思想: 将待排序集合中处于同一个'范围'的元素存入同一个桶中,根据划分范围和映射规则把集合拆分成多个桶, 对每个桶中的元素进行排序,则所有桶中元素构成的集合是有序的。计数排序与桶排序区别: 计数排序:申请的额外空间跨度从最小值到最大值,若待排序集合中元素不是依次递增,则空间浪费。 桶排序 :在最小值到最大值之间的固定区域范围申请空间,减少了元...原创 2019-02-23 10:26:44 · 170 阅读 · 0 评论 -
Fighting-算法-计数排序
本博客转自:https://blog.youkuaiyun.com/wardseptember/article/details/81434641以下是本人自己理解,共勉!""" 计数排序--算法思想: 假设要排序的数组为 nums = [1,0,3,1,0,1,1] 结果输出:[0, 0, 1, 1, 1, 1, 3] 1、首先求出nums的长度,最大值和最小值。 nums_...原创 2019-02-23 08:55:09 · 219 阅读 · 0 评论 -
python中使用while...else 和 for...else 还有try...else
其他语言中else只可以和if进行组合,也就是我们常见的if...else,但是python为else赋予了新的声明。它可以和while 、for 、try一起串联使用。下面我们介绍和while串联使用时的效果。count=0while count>12: if (11>0): print("成立") break count+...转载 2019-02-16 16:26:35 · 243 阅读 · 0 评论 -
Python -- with语句
引言with 语句是从 Python 2.5 开始引入的一种与异常处理相关的功能。with 语句适用于对资源进行访问的场合,确保不管使用过程中是否发生异常都会执行必要的“清理”操作,释放资源,比如文件使用后自动关闭、线程中锁的自动获取和释放等。术语要使用 with 语句,首先要明白上下文管理器这一概念。有了上下文管理器,with 语句才能工作。下面是一组与上下文管理器和with 语...转载 2018-11-23 19:41:33 · 140 阅读 · 0 评论 -
python异常-- try-catch-else-finally 异常-- raise
1、捕获异常-- try-catch-else-finally:try: 存在潜在的异常code放在try中,进行捕获。except Exception,err: 捕捉异常名称和参数,并抛出异常处理信息。else: 如果没有异常则执行else。finally: 退出try语句后总会执行的code。 2、自己触发异常 raiseraise...原创 2018-11-23 19:08:25 · 1130 阅读 · 0 评论