自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

明月清風

自強弘毅,求是拓新

  • 博客(8)
  • 资源 (9)
  • 收藏
  • 关注

原创 Python实现KMP算法-字符串匹配和查找

《大话数据结构》一书第五章介绍了字符串的定义、存储结构和模式匹配算法。关于模式匹配,重点介绍了暴力(Brute-Force)算法和KMP算法,暴力算法较为简单,但性能较低。KMP算法在暴力算法基础上,通过特别巧妙的方式,降低了字符串比较次数,将时间复杂度从O((n-m+1)*m)降低到了O(n+m)。但是!!!这本书中关于KMP算法的介绍冗长、混乱,讲解的不够透彻,只讲其一,不讲其二,非常不便于理解。在反复阅读和理解消化了几个小时后,发现对KMP算法还是不能了然于胸。因此在网上查阅了相关资料,个人感觉讲

2021-07-24 11:43:40 440 4

原创 Python基于链表结构实现链队列Queue

上一篇文章介绍了循环队列的顺序存储结构的实现,Python基于顺序结构实现循环队列Queue。本文参考《大话数据结构》4.13一节,基于链表结构实现了链队列。对于循环队列与链队列的比较,《大话数据结构》中有很好的介绍:对于循环队列与链队列的比较,可以从两方面来考虑:从时间上,其实它们的基本操作都是常数时间,即都为O(1)的,不过循环队列是事先申请好空间,使用期间不释放,而对于链队列,每次申请和释放结点也会存在一些时间开销,如果入队出队频繁,则两者还是有细微差异。对于空间上来说,循环队列必须有一

2021-07-18 11:41:58 424

原创 Python基于顺序结构实现循环队列Queue

参考《大话数据结构》4.12一节,基于顺序结构实现了循环队列。class SeqQueue(object): def __init__(self, size=10): self.MAXSIZE = size self.data = [' '] * size self.front = 0 # 头指针 self.rear = 0 # 尾指针 def __len__(self): return (self.re

2021-07-18 10:01:11 636

原创 Python下基于栈和逆波兰算法实现四则运算

参考《大话数据结构》一书4.9节,Python下基于栈和逆波兰算法实现四则运算。栈的实现使用顺序结构,即基于列表实现,参考本人博客Python实现顺序结构栈Sequence Stack中缀转换后缀采用逆波兰算法,参考本人博客Python利用栈将中缀表达式转换为后缀表达式(四则运算)。计算代码如下所示(transform函数见上述 2.Python利用栈将中缀表达式转换为后缀表达式(四则运算)):def arithmetic(expression): signs = '+-*/'

2021-07-17 22:51:26 415

原创 Python利用栈将中缀表达式转换为后缀表达式(四则运算)

参照《大话数据结构》一书4.9节,基于Python实现了中缀表达式到后缀表达式的转换。栈的实现使用顺序结构,即基于列表实现,与本人博客Python实现顺序结构栈Sequence Stack一致。class SeqStack(object): def __init__(self, size=10): self.__MAXSIZE = size # 将MAXSIZE定义为私有变量,禁止子类对象访问 self.__data = [' '] * size # 将dat

2021-07-17 21:36:19 796

原创 Python使用循环和递归实现斐波那契数列

基于Python实现斐波那契数列。方法一:使用循环,通过yield生成器返回结果,使用时通过list转换为列表。这种方法效率更高,占用空间较小;方法二:使用递归实现,效率很低,占用内存较高。n=40时,方法一耗时不足1s,方法二耗时68s。import timedef fib(n): a = 0 b = 1 for i in range(n): yield b a, b = b, a + bdef fib_recursive(n):

2021-07-17 19:30:41 2275

原创 Python实现链栈 Link Stack

"""Python实现链栈by 勤奋的清风 at 2021-07-17"""class Node(object): def __init__(self, value=None, next_node=None): self.value = value self.next = next_node def set_value(self, value): self.value = value def set_next(self,

2021-07-17 18:31:50 608

原创 Python实现顺序结构栈Sequence Stack

参考大话数据结构,利用Python3实现了栈的顺序结构。class SeqStack(object): def __init__(self, size=10, elem_type=int): self.__MAXSIZE = size # 将MAXSIZE定义为私有变量,禁止子类对象访问 self.type = elem_type self.__data = [elem_type] * size # 将data定义为私有变量,禁止子类对象访问

2021-07-17 13:04:28 292

openlayer使用方位坐标系显示北极地区

openlayer使用方位坐标系显示北极地区地图 openlayer使用方位坐标系显示北极地区地图

2017-10-11

谷歌GDELT数据下载

代码有注释,数据说明看我博客。没分的可以直接去我博客中复制。代码有注释,数据说明看我博客。

2017-09-22

python利用百度地图API进行地理编码(将地名转换为经纬度)

介绍了如何在百度地图API申请密钥,然后在Python中调用API接口将自有数据中的地名转换为经纬度坐标。具体介绍可参照我的博客。

2017-05-20

tensorflow实现AlexNet训练mnist数据

tensorflow实现AlexNet训练mnist数据python代码

2017-05-07

tensorflow----tf_upgrade.py

在github下载的tf_upgrade.py在升级代码时会报错(本人系统是win10 64位,安装的是tensorflow1.0),对源代码520行进行修改后可以输出结果,但是输出后的文件在win10下直接运行会报错,将文件里的内容复制到新建的py文件中即可运行。

2017-03-14

python实现kaggle中的数字识别

python语言实现kaggle中的数字挖掘入门实例数字识别,附代码用到的数据与算法运行得到的结果,算法运行时间大概为4小时左右,主要是因为knn算法计算量较大。

2016-12-28

c++实现huffman哈夫曼编码

利用c++实现了Huffman编码,并对代码进行了注释,保证可读性。 {4,2,13,3,7,10,8,23,22,35,52,31} 下面是编码结果: 第1个数的huffman编码是:00000 第2个数的huffman编码是:000010 第3个数的huffman编码是:0110 第4个数的huffman编码是:000011 第5个数的huffman编码是:01110 第6个数的huffman编码是:0001 第7个数的huffman编码是:01111 第8个数的huffman编码是:010 第9个数的huffman编码是:001 第10个数的huffman编码是:111 第11个数的huffman编码是:10 第12个数的huffman编码是:110

2016-10-27

快速排序+归并排序+c++

计算机算法课程的作业,用c++实现了归并排序和快速排序,并比较了两种算法的速度。测试数据为随机生成,可设置为10万、100万、1000万大小的数组。在代码中提供了详细的注释,在容易出错的地方进行了解释。下面是得到的输出结果。 the array num is :1000000 The mergesort run time is:15931ms! The quicksort run time is:234ms! the array num is :10000000 The mergesort run time is:15756ms! The quicksort run time is:2527ms!

2016-10-27

道格拉斯普克算法的C++实现

打开txt文件,读取其中的坐标数据,并利用DP算法进行简化。其中,txt文件是由shp文件转化而来,有不同的线对象,每个线对象有各自的很多坐标点,简化时是根据每个线对象进行简化,输出的数据与原数据格式相同,可转化回shp数据进行显示。shp、txt格式之间相互转换的工具在CSDN上面有,用户可另行下载,亲测可以用,程序运行所需的相关数据已一并打包。有任何问题欢迎留言。

2016-05-08

空空如也

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

TA关注的人

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