
算法
基本算法记录
我爱北回归线
保持微笑
展开
-
算法衡量指标
# 算法衡量指标from sklearn import metricsy_test = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2] # 真实标签predictions = [0, 0, 1, 1, 0, 0, 0, 0, 2, 0, 1, 1, 2, 1, 1, 2, 2, ...原创 2020-03-06 15:45:14 · 321 阅读 · 0 评论 -
简单选择排序
简单选择排序法(Simple Selection Sort)就是通过n-i 次关键字之间的比较,从n-i +1个记录中选出关键字最小的记录,并和第i个记录交换。代码:def simpleSelection_sort(alist): n = len(alist) for i in range(n-1): min = i for j in range...原创 2019-10-02 20:22:43 · 112 阅读 · 0 评论 -
冒泡排序
步骤:1.从头开始,比较相邻两个数的大小,如果前面的数大于后面的数就交换位置 2.重复第1个步骤,直到没有数值交换,数列从小到大排序。代码:# 冒泡排序算法(升序排列)def bubble_sort(alist): n = len(alist) for i in range(n-1): for j in range(n-1-i)...原创 2019-09-26 17:32:23 · 102 阅读 · 0 评论 -
二分查找的递归实现
代码如下:def binary_search(alist, item): """二分查找 非递归方式""" n = len(alist) start = 0 end = n - 1 while start <= end: mid = (start + end) // 2 if alist[mid] == item: ...原创 2019-09-22 14:52:38 · 437 阅读 · 0 评论 -
二叉树的遍历
用自己的语言总结二叉树遍历的过程。假设我们有这样一棵二叉树:前序遍历:先根,再左子树,最后右子树;先把左子树所有左节点遍历下去,对每个节点都是先遍历根,再左,最后右;对右子树重复第2步骤。因此,上图前序遍历过程为:ABDHKE,此时左子树遍历完毕,跳到右子树C,CFIGJ,即前序遍历结果是 ABDHKECFIGJ。中序遍历:从最后一层开始,按照 左——>中——>...原创 2019-09-19 20:54:37 · 219 阅读 · 0 评论 -
用递归方式实现斐波那契数列,并打印出来
用列表的方式存储该数列代码:list =[]for i in range(20):if i == 0 :list.append(0)elif i == 1 :list.append(1)else:list.append(list[i-2]+list[i-1])print(list)测试结果:原创 2019-09-10 16:21:36 · 1606 阅读 · 2 评论 -
常用功能代码记录
常用功能代码记录人民币大写转阿拉伯数字阿拉伯数字转成大写人民币判断8位数字字符串是否为合法的日期格式阿拉伯数字转成中文数字(10以内,非人民币)求最大、最小日期:['20181229', '20211229', '32101123']纠正字符,变成正确的想要的字符,例如把'E'变成原本的'三'人民币换成标准格式(12,555,000)判断各种字符所属类型(汉字、数字、字母、小写大写字母等)人民币大写转阿拉伯数字'''人民币大写转阿拉伯数字'''CNY_TABLE = {u'零': 0, u'壹'原创 2020-11-30 09:18:02 · 297 阅读 · 0 评论