逆波兰式的求解,建立一个类栈容器,遍历给定的逆波兰表达式,遇到数字就push, 遇到操作符就进行出栈,连续出两次,因为给定的四则运算符都是双目的,这里注意下这两个操作数的先后顺序,因为对于加法和乘法没关系,但是对于减法和除法是有先后关系的。然后进行相应的运算,将结果push进栈中。
这里附带说明下python中进行除法运算与c,java系列中的除法的不同,就是向下取整的问题。这种不同表现在两个操...
分类:
编程语言 时间:
2014-07-06 12:22:02
阅读次数:
235
简单的插入排序,总是超时,暂且放在这记录一下。
class Solution:
# @param head, a ListNode
# @return a ListNode
def insertionSortList(self, head):
if head == None or head.next == None:
return head
psuhead...
分类:
编程语言 时间:
2014-07-06 11:52:20
阅读次数:
230
事前准备:
下载并安装:
Cairo:
http://www.lfd.uci.edu/~gohlke/pythonlibs/bux9zozk/pycairo-1.10.0.win32-py2.7.exe
Pycha:
https://bitbucket.org/lgs/pycha/get/e3e270a0e7ae.zip
简单的程序示例如下(包括饼图和直方图):
#!/usr/...
分类:
编程语言 时间:
2014-07-06 10:14:25
阅读次数:
315
最近,为了微信公众号的图文,上网疯狂的收集和看了一些有深度的新闻和有趣的引人深思的文字评论,并选择了几篇极品发布出去。但感觉一篇一篇的看实在是麻烦死了。想找一个简单的解决办法,看能不能自动把网上的资料收集起来,然后自己用统一筛选。不巧,最近准备学习下网络爬虫相关知识,于是按照网上的教程自己学着试写了一个小小的爬虫,嘻嘻,是用来爬韩寒博客的。
先把完整的代码贴上来,如果朋友们需要试验下,请...
分类:
编程语言 时间:
2014-07-06 10:11:48
阅读次数:
325
链表的归并排序
超时的代码
class Solution:
def merge(self, head1, head2):
if head1 == None:
return head2
if head2 == None:
return head1
# head1 and head2 point to the same link list
if head1 == he...
分类:
编程语言 时间:
2014-07-06 09:09:51
阅读次数:
275
网络上两个程序通过一个双向通讯连接实现数据的交换,这个双向链路的一端称为一个Socket。Socket支持的协议有多种,这里主要介绍基于 TCP/IP 协议族的 Socket 编程。
首先,IP协议族决定了socket的地址类型,在通信中必须采用对应的地址。AF_INET(AF 表示 Adress Family)表示要用 ipv4 地址(32位)与端口号(16位)的组合。
然后,根据传输协议又分为:流式 Socket(SOCK_STREAM) 和数据报式 Socket(SOCK_DGRAM):
流式 SOC...
分类:
编程语言 时间:
2014-07-06 08:47:14
阅读次数:
247
在网上看到不少文章都选用mysqldb作为python连接mysql数据库的工具,但是mysqldb目前支撑的版本较低,安装失败。所以才尝试pymysql,这个比较简单易用...
分类:
数据库 时间:
2014-07-06 08:28:30
阅读次数:
300
标准库:一些最爱
os
os模块为你提供了访问多个操作系统服务的功能。
os和它的子模块os.path还包括一些用于检查、构造、删除目录和文件的函数,以及一些处理路径的函数。
os模块中一些重要函数和变量
函数/变量
描述
environ
对环境变量进行映射
system(command)
在子s...
分类:
编程语言 时间:
2014-07-06 00:30:46
阅读次数:
311
单链表的反转可以使用循环,也可以使用递归的方式
1.循环反转单链表
循环的方法中,使用pre指向前一个结点,cur指向当前结点,每次把cur->next指向pre即可。
代码:
class ListNode:
def __init__(self,x):
self.val=x;
self.next=None;
def nonrecurse(he...
分类:
编程语言 时间:
2014-07-06 00:24:52
阅读次数:
331
给定一个点,除该点之外的其他所有点中,与该点的关系要么是共线,要么就是共点,也就是两点重合。
共线有三种情况:水平共线,垂直共线,倾斜的共线。合并下这三种情况就是斜率存在的共线和斜率不存在的共线。
那么我们的任务就是针对每个点,找出与其共线的这些情况中,共线最多的点的个数。
注意:最终的结果别忘了加上共点的个数。
class Solution:
def maxPoints(self, p...
分类:
编程语言 时间:
2014-07-05 23:52:29
阅读次数:
402