一心想学习算法,很少去真正静下心来去研究,前几天趁着周末去了解了最短路径的资料,用python写了一个最短路径算法。算法是基于带权无向图去寻找两个点之间的最短路径,数据存储用邻接矩阵记录。首先画出一幅无向图如下,标出各个节点之间的权值。其中对应索引:A――>0B――>1C――>2D――>3E――>4F――>5G――>6邻接矩阵表示无向图:算法思想是通过Dijkstra算法结合自身想法实现的。大致思路是:从起始点开始,搜索周围的路径,记录每个点到起始点的权值
系统 2019-09-27 17:51:19 2360
场景说明假设有一个mysql表被水平切分,分散到多个host中,每个host拥有n个切分表。如果需要并发去访问这些表,快速得到查询结果,应该怎么做呢?这里提供一种方案,利用python3的asyncio异步io库及aiomysql异步库去实现这个需求。代码演示importloggingimportrandomimportasynciofromaiomysqlimportcreate_pool#假设mysql表分散在8个host,每个host有16张子表TB
系统 2019-09-27 17:50:32 2360
1、一个python的package文件夹中__init__.py文件是在引用该包时,首先运行的一个文件。正常情况下,我们没有对它进行编辑时,默认为空。2、utils.py文件中存储一些常见的公用的函数、方法。项目不同,里面内容也不一定相同。在调用时,可直接用“fromutilsimport函数名”即可。但有时候公用的函数过多,一个py文件最多放上400~500行的话,一个utils文件根本不够,这种情况下,我们需要将这些函数分放在多个文件中,然后将多个文
系统 2019-09-27 17:50:28 2360
python基础学习笔记(七)2013-04-2400:16虫师阅读(...)评论(...)编辑收藏本章介绍如何将语句组织成函数,这样,可以告诉计算机如何做事。下面编写一小段代码计算婓波那契数列(前两个数的和是第三个数)fibs=[0,1]#定义一个列表,初始内容是0,1foriinrange(8):#循环8次fibs.append(fibs[-2]+fibs[-1])#append在末尾追加一个数,这个是它前面两个数的和#输入>>>fibs#输出[0,1
系统 2019-09-27 17:48:55 2360
核心代码:#!/usr/bin/envpython#-*-coding:utf-8-*-frombisectimportbisect_LIST1,_LIST2=[],[]_INIT=Falseip2int=lambdaip_str:reduce(lambdaa,b:(a<<8)+b,[int(i)foriinip_str.split('.')])def_init():global_LIST,_INITifnot_INIT:forlinopen('ipdat
系统 2019-09-27 17:48:36 2360
如下所示:#coding:utf-8importosimportpsutilimporttimedefwrite_pid():pid=os.getpid()fp=open("pid.log",'w')fp.write(str(pid))fp.close()defread_pid():ifos.path.exists("pid.log"):fp=open("pid.log",'r')pid=fp.read()fp.close()returnpidelse:r
系统 2019-09-27 17:48:34 2360
众所周知,中文输入法是一个历史悠久的问题,但也实在是个繁琐的活,不知道这是不是网上很少有人分享中文拼音输入法的原因,接着这次NLPProject的机会,我觉得实现一发中文拼音输入法,看看水有多深,结果发现还挺深的,但是基本效果还是能出来的,而且看别的组都做得挺好的,这次就分享一下我们做的结果吧。(注:此文假设读者已经具备一些隐马尔可夫模型的知识)任务描述实现一个中文拼音输入法。经过分析,分为以下几个模块来对中文拼音输入法进行实现:核心功能包括拼音切分(Sp
系统 2019-09-27 17:48:20 2360
使用urllib2,太强大了试了下用代理登陆拉取cookie,跳转抓图片......文档:http://docs.python.org/library/urllib2.html直接上demo代码了包括:直接拉取,使用Reuqest(post/get),使用代理,cookie,跳转处理#!/usr/bin/python#-*-coding:utf-8-*-#urllib2_test.py#author:wklken#2012-03-17wklken@yeah
系统 2019-09-27 17:48:01 2360
一个功能的实现,可以用多种语句来实现,比如说:while语句、for语句、生成器、列表推导、内置函数等实现,然而他们的效率并不一样。写了一个小程序来测试它们执行的效率。测试内容:将一个数字大小为20万的数字,依次取绝对值,放到列表中,测试重复1千次.测试程序:复制代码代码如下:importtime,sysreps=1000#测试重复次数nums=200000#测试时数字大小deftester(func,*args):#总体测试函数startTime=tim
系统 2019-09-27 17:45:55 2360
MapReduce与HDFS简介什么是Hadoop?Google为自己的业务需要提出了编程模型MapReduce和分布式文件系统GoogleFileSystem,并发布了相关论文(可在GoogleResearch的网站上获得:GFS、MapReduce)。DougCutting和MikeCafarella在开发搜索引擎Nutch时对这两篇论文做了自己的实现,即同名的MapReduce和HDFS,合起来就是Hadoop。MapReduce的Dataflow如
系统 2019-09-27 17:38:38 2360