什么是粒子群算法粒子群算法,也称粒子群优化算法或鸟群觅食算法(ParticleSwarmOptimization,PSO)。由J.Kennedy和R.C.Eberhart等人于1995年提出。其属于进化算法的一种,也是从随机解出发,通过迭代寻找最优解,其通过适应度来评价解的品质。这种算法以其实现容易、精度高、收敛快等优点引起了学术界的重视,并且在解决实际问题中展示了其优越性。求解过程PSO通过模拟鸟群的捕食行为完成最优解的求取。假设一群鸟在一个空间捕捉食物
系统 2019-09-27 17:52:21 2153
进程、线程和协程进程的定义:进程,是计算机中已运行程序的实体。程序本身只是指令、数据及其组织形式的描述,进程才是程序的真正运行实例。线程的定义:操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。进程和线程的关系:一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。CPU的最小调度单元是线程不是进程,所以单进程多线程也可以利用多核CPU.协程的定义:协程通过在线程中实现调度,避免了陷
系统 2019-09-27 17:52:14 2153
变量与赋值在Python中,一切皆为对象,对象通过「变量名」引用,「变量名」更确切的叫法是「名字」,好比我们每个人都有自己的名字一样,咱们通过名字来代指某个人,代码里面通过名字来指代某个对象。变量赋值就是给对象绑定一个名字,赋值并不会拷贝对象。好比我们出生的时候父母就要给我们取一个名字一样,给人取个绰号并不来多出一个人来,只是多一个名字罢了。两个对象做比较有两种方式,分别是:is与==,is比较的是两个对象是否相同,通过对象的ID值可识别是否为相同对象,=
系统 2019-09-27 17:51:31 2153
今天我们来到了循环队列这一节,之前的文章中,我介绍过了用python自带的列表来实现队列,这是最简单的实现方法。但是,我们都知道,在列表中删除第一个元素和删除最后一个元素花费的时间代价是不一样的,删除列表的第一个元素,那么在它之后的所有元素都要进行移动。所以当列表特别长的时候,这个代价就比较明显了。我们本文介绍的循环队列可以避免这个问题,同样我们上篇文章提到的用链表实现的方法也可以避免。下面,我们来介绍循环队列。循坏队列循环队列,就是将普通的队列首尾连接起
系统 2019-09-27 17:50:25 2153
排列defperm(arr,stack):ifnotarr:print(stack)#到树的最后,输出结果tmp=stack.copy()res.append(tmp)else:#没有到树的叶子节点的时候,使用递归继续往下找。foriinrange(len(arr)):stack.append(arr[i])delarr[i]perm(arr,stack)arr.insert(i,stack.pop())arr=[1,2,3]stack=[]res=[]p
系统 2019-09-27 17:50:13 2153
起源2001年秋召开第十届InternationalPythonConference(IPC10,Pycon的前身),打算征集一条印在会议T恤衫上的标语,最终他们从Python社区收到了500多条投稿。并最中筛选确认为importthis,他们选择之后觉得需要实现它,经过讨论最中定义为了由TimPeter写的《ThezenofPython》触发在交互命令中输入importthis就会触发。>>>importthisTheZenofPython,byTimP
系统 2019-09-27 17:50:10 2153
一、操作系统中相关进程的知识Unix/Linux操作系统提供了一个fork()系统调用,它非常特殊。普通的函数调用,调用一次,返回一次,但是fork()调用一次,返回两次,因为操作系统自动把当前进程(称为父进程)复制了一份(称为子进程),然后,分别在父进程和子进程内返回。子进程永远返回0,而父进程返回子进程的ID。这样做的理由是,一个父进程可以fork出很多子进程,所以,父进程要记下每个子进程的ID,而子进程只需要调用getppid()就可以拿到父进程的I
系统 2019-09-27 17:50:08 2153
一、安装一般使用cmd安装就可以手动安装通过下载方式django官方网站:https://www.djangoproject.com/python官方仓库:https://pypi.python.org/pypi/Django二、配置使用1、通过cmd新建一个项目,我是在桌面新建上面命令会在桌面新建pythonDjango文件夹,在里面会生成如下图两个文件manage.py:命令行工具,可以用多种方式与该django项目进行交互;在pythonDjango
系统 2019-09-27 17:49:45 2153
单例模式单例模式(SingletonPattern)是一种常用的软件设计模式,该模式的主要目的是确保某一个类只有一个实例存在。当你希望在整个系统中,某个类只能出现一个实例时,单例对象就能派上用场。比如,某个服务器程序的配置信息存放在一个文件中,客户端通过一个AppConfig的类来读取配置文件的信息。如果在程序运行期间,有很多地方都需要使用配置文件的内容,也就是说,很多地方都需要创建AppConfig对象的实例,这就导致系统中存在多个AppConfig的实
系统 2019-09-27 17:49:13 2153
【摘要】本节中,我们看一下正则表达式的相关用法。正则表达式是处理字符串的强大工具,它有自己特定的语法结构,有了它,实现字符串的检索、替换、匹配验证都不在话下。当然,对于爬虫来说,有了它,从HTML里提取想要的信息就非常方便了。1.实例引入说了这么多,可能我们对它到底是个什么还是比较模糊,下面就用几个实例来看一下正则表达式的用法。打开开源中国提供的正则表达式测试工具http://tool.oschina.net/regex/,输入待匹配的文本,然后选择常用的
系统 2019-09-27 17:48:57 2153