昨天初步接触了爬虫,实现了爬取网络段子并逐条阅读等功能,详见Python爬虫初学(一)。 今天准备对百度贴吧下手了,嘿嘿。依然是跟着这个博客学习的,这次仿照该博主用类的方式写。 其实我从来不玩贴吧,不过据我所知贴吧有一些…
Python使用openpyxl读写excel文件
Python使用openpyxl读写excel文件 这是一个第三方库,可以处理xlsx格式的Excel文件。pip install openpyxl安装。如果使用Aanconda,应该自带了。 读取Excel文件 需要导…
数据结构与算法--树的三种存储结构
数据结构与算法–树的三种存储结构 之前学的链表、队列、栈,都是线性表,因为其中每个数据元素只有一个前驱和一个后继。是一对一的关系。 假如是一对多的关系呢?这种数据结构就是今天要学的树。 树的定义 树是由有限个…
数据结构与算法--线索二叉树及其前序、中序遍历
数据结构与算法–线索二叉树及其前序、中序遍历 二叉树如果某个结点没有左孩子或右孩子,则这个域就为空。如node.lChild = null, 而叶子结点两个指针域都是null。我们知道n个结点的二叉树共有2n…
数据结构与算法--最短路径之Bellman算法、SPFA算法
数据结构与算法–最短路径之Bellman算法、SPFA算法 除了Floyd算法,另外一个使用广泛且可以处理负权边的是Bellman-Ford算法。 Bellman-Ford算法 假设某个图有V个顶点E条边。 …
数据结构与算法--最短路径之Dijkstra算法
数据结构与算法–最短路径之Dijkstra算法 加权图中,我们很可能关心这样一个问题:从一个顶点到另一个顶点成本最小的路径。比如从成都到北京,途中还有好多城市,如何规划路线,能使总路程最小;或者我们看重的是路…
数据结构与算法--最短路径之Floyd算法
数据结构与算法–最短路径之Floyd算法 我们知道Dijkstra算法只能解决单源最短路径问题,且要求边上的权重都是非负的。有没有办法解决任意起点到任意顶点的最短路径问题呢?如果用Dijkstra算法,可以这…
数据结构与算法--拓补排序及无环加权有向图的最短路径
数据结构与算法–拓补排序及无环加权有向图的最短路径 现实生活中一些项目工程、生产开发,都有一个所谓的流程。一个流程分为若干个活动或者说步骤,这些活动具有一个优先级,很显然我们得按照优先级顺序去执行它们(优先级…
Java虚拟机--内存模型与线程
Java虚拟机–内存模型与线程 高速缓存:处理器要与内存交互,如读取、存储运算结果,而计算机的存储设备和处理器的运算速度差异巨大,所以加入一层读写速度和处理器接近的高速缓存来作为内存和处理器之间的缓冲——将运…
Java多线程--JDK并发包(2)
Java多线程–JDK并发包(2) 线程池 在使用线程池后,创建线程变成了从线程池里获得空闲线程,关闭线程变成了将线程归坏给线程池。 JDK有一套Executor框架,大概包括Executor、Executo…
Java虚拟机--线程安全和锁优化
Java虚拟机–线程安全和锁优化 线程安全 线程安全:当多线程访问一个对象时,如果不用考虑这些线程在运行时环境下的调度和交替执行,也不需要额外的同步,或者在调用方进行任何其他的协调操作,调用这个对象的行为都可…
Java多线程--锁的优化
Java多线程–锁的优化 提高锁的性能 减少锁的持有时间 一个线程如果持有锁太长时间,其他线程就必须等待相应的时间,如果有多个线程都在等待该资源,整体性能必然下降。所有有必要减少单个线程持有锁的时间。比如下面…