Loading

摘要: 算法流程(从小到大排): 1.首先将第一个数看成一个有序序列,第二到最后一个数看成无序序列; 2.从无序序列中抽到一张手牌,并将其与有序序列比较; 3.将手牌插入到有序序列的合适位置 4.重复2,3步骤 1 def insert_sort(arr): 2 for i in range(len(arr 阅读全文
posted @ 2021-07-11 17:16 climber_dzw 阅读(37) 评论(0) 推荐(0) 编辑
摘要: 算法流程: 首先在未排序序列中找到最小(大)元素,存放到起始位置。 再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。 重复第二步,直到所有元素均排序完毕。 代码实现: 1 def select_sort(li): 2 for i in range(len(li)-1): # i 阅读全文
posted @ 2021-07-11 14:35 climber_dzw 阅读(19) 评论(0) 推荐(0) 编辑
摘要: 1.列表每两个相邻的数,如果前面比后面大,则交换这两个数的位置; 2.一趟排序结束之后,则有序区增加一个数,无序区减少一个数。(比如第一趟结束之后,最大的数到了最后的位置); 3.如果遍历一趟都没有交换位置的动作发生,则排序完成。 代码实现: 1 def bubble_sort(li): 2 for 阅读全文
posted @ 2021-07-11 11:06 climber_dzw 阅读(27) 评论(0) 推荐(0) 编辑
摘要: #二分查找建立在有序的前提下 1 import time 2 3 def cal_time(func): 4 def wrapper(*args, **kwargs): 5 t1 = time.time() 6 result = func(*args, **kwargs) 7 t2 = time.t 阅读全文
posted @ 2021-07-10 21:18 climber_dzw 阅读(49) 评论(0) 推荐(0) 编辑
摘要: 问题描述: 有三个立柱A、B、C。A柱上穿有大小不等的圆盘N个,较大的圆盘在下,较小的圆盘在上。要求把A柱上的圆盘全部移到C柱(终点)上,保持大盘在下、小盘在上的规律(可借助B柱)。每次移动只能把一个柱子最上面的圆盘移到另一个柱子的最上面。请输出移动过程。 解答 这是动态规划问题中的一种,用递归来实 阅读全文
posted @ 2021-07-10 21:03 climber_dzw 阅读(1120) 评论(0) 推荐(0) 编辑
摘要: 1.导入模块 import time 2.使用方法汇总 time.sleep():定时函数 time.time(): 获取当前时间戳/ time.clock():CPU时间 time.local() / gmtime(): 把时间戳转换成时间元组结构(gmtime差localtime八个小时)中国是 阅读全文
posted @ 2021-07-10 20:42 climber_dzw 阅读(145) 评论(0) 推荐(0) 编辑
摘要: xlrd读取excel数据时,excel中的整数变成小数: 解决方法: 1.在数字的单元格数据前,加一个英文的单引号 ' ,用于表明该单元格数据是按照文本格式来存储与读取的 假设要转换的数字在A列,我们在B1单元格中输入公式 =A1 & "",这时B1单元格的内容和A1一样,但已经是文本了,把B1单 阅读全文
posted @ 2021-07-10 20:10 climber_dzw 阅读(792) 评论(0) 推荐(0) 编辑