自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 比赛中的软件工程-读《代码中的软件工程》有感

科软《高级软件工程》课程总结

2022-07-09 18:10:08 352 1

原创 数据挖掘-Apriori算法

from collections import defaultdictimport pandas as pddef load_data(file): res=[] with open(file) as f: for i in f: res.append(list(map(int,i.split()))) return resdef tel_k_(a,b,k): a.sort() b.sort() if k==0:

2021-10-23 12:50:22 98

原创 数据挖掘-FP_Growth算法

import itertoolsfrom collections import defaultdictimport copy#全局变量res=[]#从文件中加载数据def load_data(path="data.txt"): res=[] with open(path,'rb') as f: for i in f: res.append(list(map(int,i.split()))) print("读取文件并用list()

2021-10-23 12:47:16 190

原创 算法之路-图的最短路

1. 单源最短路1.1 无负权边 - 迪杰斯特拉算法自环和重边对迪杰斯特拉算法没有影响。要求无负权边的原因是:考虑自环中有负权边的情况其中A 为源点,C为终点,第一轮选取源点A,结束后更新,d[c]=1,d[b]=2,第二轮选取C点,不再更新d[c],d[c]值固定为1,但实际上A到C的最短距离应该为2+(-2)=0。算法核心:每次选取距离源点最近的点,对其余距离进行刷新,直至选取到目标点。def djs(): global n,m,hd,va,nx,wg M=0x3f3

2021-07-29 14:26:19 95

原创 算法之路-双指针算法

1. 知识核心双指针算法即字面意思,在解题过程需要两个指针进行比较,常见的就是查找最值问题,这里的双指针还意味着,找到题目中某个指针的隐藏规律,简化该指针的移动,从而提高算法效率。2. 应用清单以《最长连续不重复子序列》为例。2.1 写出暴力破解代码其实只用记录一下自己第一次想到的思路即可。2.2 构建代码模板:for i in range(n): while (j符合的条件): #具体的算法执行过程2.3 优化过程寻找某个,或两个指针的移动规律,建立关系

2021-07-03 14:58:33 132

原创 算法之路-归并排序

1 算法思想该算法基于分治的思想,使两个有序数组依次合并。① 确定分界点mid=(s+e)//2② 递归排序左右两边③ 归并-合二为一2 代码尚无代码问题def merge_sort(l,s,e): if s>=e: return mid=s+e>>1 merge_sort(l,s,mid) merge_sort(l,mid+1,e) tmp=[] i,q=s,mid+1 while i<=mid

2021-06-13 18:24:04 47

原创 算法之路-快速排序

1 算法思想该算法基于分治的思想,使某个位置的两边一大一小。① 确定分界点确定分界点有四种方法:左边界 l[i]中点 l[(i+q)/2]右边界 l[q]随机② 调整区间左边<=x,右边>x③ 递归左右两段2 编程问题输入格式:输入共两行,第一行包含整数 n。第二行包含 n 个整数(所有整数均在 1∼109 范围内),表示整个数列。输入样例53 1 2 4 5第二行在input()时是作为整体读进去的,不再像c++一样循环读入。所以要用str.split

2021-06-13 09:41:49 129

原创 数据挖掘之路-Numpy基础

1.什么是Numpy?Numpy是 Numerical Python的简称,是目前python数值计算中最为重要的基础包。这些数值计算主要包括:多维数组的运算,这使你不必再编写for循环来对数组中的值进行计算。import numpy as npa=np.array([1,2,3])print((a**2))[1 4 9]#如果使用列表,那将使用for循环挨个对列表中的元素进行操作随机数的生成,相比于python内建库random,np.random可根据用户需求定义随机数生成,比如

2021-05-05 11:53:47 185

原创 数据挖掘之路-Python基础

1.Python中的语言语义1.1 变量和参数传递在Python中对一个变量赋值时,你就创建了一个指向等号右边对象的引用。※当你将对象作为参数传递给一个函数时,指向原始对象的新的变量名字会自动创建(就是你起的那个函数参数名字),注意这个过程仍旧是起别名。通俗点理解,python将值储存起来,然后通过将变量名指向这些值的方式来定义变量。最简单的,创建a=1,那么内存(不知道是不是内存)会首先把1存起来,然后创建一个a指向这个1,然后我们再创建b=a,这时b也会指向a所知的那一块内存。此时,如果a指

2021-04-15 11:33:01 88

原创 微信小程序之复习计划生成器

想写一个复习计划生成器的web程序版,实现的基本功能有:1.复习计划直接打印在日历上2.允许同时添加多科目的复习计划并最终在日历上呈现3.折线图化遗忘规律,参照默默背单词4.打卡最近在期末考试,寒假再写。...

2019-12-16 17:23:11 693

原创 python应用之单词计划生成器

其实是先写了这个单词计划生成器,复习时发现艾宾豪斯遗忘曲线同样适用,但这个单词计划生成器无法适配复习计划,所以才写了另一个复习计划生成器。#ecoding=utf-8import sysfrom xlwt import Workbookw =Workbook()#创建一个工作簿ws = w.add_sheet('1') #创建一个工作表dayl=[1,2,4,15,30]word_n...

2019-12-10 13:21:31 735

原创 python应用之复习计划生成器

python应用之复习计划生成器原理:艾宾豪斯遗忘曲线#ecoding=utf-8from xlwt import Workbookimport datetimew =Workbook()#创建一个工作簿ws = w.add_sheet('1') #创建一个工作表dayl=[1,2,4,15]word_number=int(input("请输入任务数(不大于15):"))exam...

2019-12-10 13:18:11 453

原创 acm,铺地毯模拟,有感

今日下午写了这道题,算起来这已经不是第一次接触acm了,可是仍旧错了很多次,最终ac时感触颇多,决定写一篇博客。第一次看到的报错是MLE,经查找意为内存报错,这方面的错误有两个可能,一个是自己开的内存太小跟题目的要求不符合,第二个是数组越界。第二次往后面的很多次则是RE和TLE,就是超时,很明显这是算法的问题,所以我又重新检查了代码,优化了所有可以优化的地方,例如,我首先把二维数组改成了两个一...

2018-10-02 16:02:26 285

原创 如何将ASCII码值转换为字符

其实很简单啦… int b; cin&gt;&gt;b;//b为那个ASCII码值 char a=b; 就成功的将你输入的那个码值转换成字符串了,,所以有时候别想太多,从简才是真理。

2018-08-14 13:16:08 24993

原创 队列-普通队列和环形队列的辨析

普通队列 若想充分运用空间,头指针不动,那么第一个位置的元素走了后面所有的元素都要向前移动一位,单纯的思考一下就知道这很浪费时间。 那么如果我要街声时间呢?我就需要我的头指针进行向后移动,那么问题来了,我头指针移动过的位置岂不是空出来了???(队列又不能插队前面的位置说空就空后面的元素多扎心啊)。而环形队列解决了这一问题。环形队列以一种看似“插队”的方式解决了头指针移动而尾指针...

2018-08-14 12:49:52 2764

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除