LeetCode 解题报告 (23)-- 合并 k 个有序数组
原题如下:
>Merge k sorted linked lists and return it as one sorted list. Analyze and describe its complexity.
原题如下:
>Merge k sorted linked lists and return it as one sorted list. Analyze and describe its complexity.
原题如下:
>Given n pairs of parentheses, write a function to generate all combinations of well-formed parentheses.
本文主要讲述了通过 python 实现的用于下载搜狗、百度、QQ 三个输入法的词库的爬虫的实现原理。主要利用了 python 自带的 urllib2
、Queue
、re
、threading
模块,并分别通过单线程和多线程实现。最后会给出完整的源码地址。
本文主要讲述了 python 中多线程的使用、线程锁以及多线程在 python 中是否能够提高效率。
进程的相信大家都听说过,而线程可以理解为比进程更小一级的概念,一个进程内至少有一个线程,如果有多个线程,那么他们就共享进程的资源,共同完成进程的任务。
使用多线程一般有两个不同的目的:
一是把程序细分成几个功能相对独立的模块,防止其中一个功能模块阻塞导致整个程序假死(GUI 程序是典型)
另一个就是提高运行效率,比如多个核同时跑,或者单核里面,某个线程进行 IO 操作时,另一个线程可以同时执行。具体可以参考这篇文章
原题如下:
>Given a linked list, remove the nth node from the end of list and return its head.
For example,
Given linked list: 1->2->3->4->5, and n = 2.
After removing the second node from the end, the linked list becomes 1->2->3->5.
Note:
Given n will always be valid.
Try to do this in one pass.
LeetCode 解题报告 (167, 1, 15, 16, 18)-- 双指针解决 ksum 问题
ksum 问题是一类问题, 要求从给定的数字中找到 k 个数,使得这 k 个数的和等于特定值。题目不难,直观的方法的时间复杂度为 \(O(n^k)\), \(n\) 为给定的数字的个数, 关键在于时间复杂度的控制, 本文主要讲述通过双指针将这类问题的时间复杂度降为 \(O(n^{k-1})\)。
LeetCode 解题报告 (17)-- 电话数字组合成的不同字符串
原题如下:
>Given a digit string, return all possible letter combinations that the number could represent.
python 连接 mysql 及其注意事项
本文主要讲述利用 python 连接数据库的过程和部分注意事项。文章不会涉及到连接的原理,只是简单介绍连接的步骤,以及 mysql 不同的引擎连接的过程的细微区别。
《Programming Collective Intelligence》读书笔记 (2)-- 协同过滤
《Programming Collective Intelligence》(中文名为《集体智慧编程》),是一本关于数据挖掘的书籍,每一章都会通过一个实际的例子来讲述某个机器学习算法,同时会涉及到数据的采集和处理等,是一本实践性很强的书籍。
本文是关于本书的第二章 Making Recommendations 的前半部分。主要讲述了寻找用户相似性和物品相似性的方法,并在这个基础上讲述如何为用户推荐物品。
Hadoop2.6.0 安装注意事项
本文为在 centos 上安装 hadoop 2.6.0 的一些需要注意的地方。过程不会很详细,如需详细配置过程,可看后面的参考链接。
0%