归档 2015年7月

[LeetCode]Single Number

题目描述:

Given an array of integers, every element appears twice except for one. Find that single one.

Note:

Your algorithm should have a linear runtime complexity. Could you implement it without using extra memory?

题目大意:

给定一个整数数组,除一个元素只出现一次外,其余各元素均出现两次。找出那个只出现一次的元素。

注意:

你的算法应该满足线性时间复杂度。可以不使用额外的空间完成此题吗?

解题思路:

对数组元素执行异或运算,最终结果即为所求。 ...

继续阅读

[LeetCode]Copy List with Random Pointer

题目描述:

A linked list is given such that each node contains an additional random pointer which could point to any node in the list or null.

Return a deep copy of the list.

题目大意:

给定一个链表,其中的节点包含一个额外的随机指针,可能指向链表中的任意一个节点或者为空。

返回链表的深拷贝。

解题思路:

解法I:时间复杂度O(n),空间复杂度O(n)

使用哈希表保存原链表到新链表节点的映射,即可实现对随机指针域的拷贝

Python代码: ...

继续阅读

SAE实时日志API Python使用小记

SAE新近开放的实时日志API允许开发者通过HTTP GET方式从SAE服务器获取应用日志,从而实现在线的应用调试与分析。

API参数介绍:

SAE日志API的URL请求格式为:GET /log/(string: service)/(string: date)/(string: ident).log?(string: fop)

参数列表中:

date表示日志的日期,格式为yyyy-MM-dd

service为SAE提供的各项服务,包括http,taskqueue(任务队列),cron(定时任务),mail(邮件),rdc(关系型数据库集群),storage(存储),push(推送)以及fetchurl(URL抓取),相信熟悉SAE的开发者不会对此感到陌生。

ident表示相应服务下的日志类型,包括access(访问),error(错误),alert(警报),debug(调试),warning(警告)与 notice(通知)。

service与ident的对应关系见下表(摘自SAE日志API文档):

service    ident
http    access、error、alert、debug、warning、notice
taskqueue    error
cron    error
mail    access、error
rdc    error、warning
storage    access
push    access
fetchurl    access

fop(似乎是flow operation的简称),为流式操作参数,支持head,tail,grep等linux下常用的shell命令;并且支持管道,操作之间用竖线分隔 ...

继续阅读

每日归档

上个月

下个月

归档