11 2013 档案
摘要:记录一下: [ H/M/L ]注意:这几个命令是大写的。使用H/M/L这三个键,可以让光标跳到当前窗口的顶部、中间、和底部,停留在第一个非空字符上。H命令和L命令前也可以加一个数字,但数字的含义不再是倍数,而是指距窗口顶部、底部的行数。例如,”3H“表示光标移动到距窗口顶部第3行的位置;”5L“表示光标移动到距窗口底部5行的位置。[ 相对于光标滚屏 ]在阅读代码时,有时我们需要根据光标所在的位置滚屏,把光标所在行移动窗口的顶端、中间或底部,这时就可以用到”zt“、”zz“和”zb“。这种滚屏方式相对于翻页来讲,它的好处在于,你能够始终以当前光标位置做为参照,不会出现翻几次页后,发现自己迷失了方
阅读全文
摘要:直接加入selector{-webkit-tap-highlight-color:rgba(0,0,0,0);}就可以去掉。
阅读全文
摘要:1.如何循环获得下标,使用enumerateints = ['a','b','c','d','e','f']for idx, val in enumerate(ints): print idx, val结果:0 a1 b2 c3 d4 e5 f------------------------------------------------------------------------------------------2.python 中的switch 替代语法,使用字典xdef test(par
阅读全文
摘要:函数的partial应用 函数在执行时,要带上所有必要的参数进行调用。但是,有时参数可以在函数被调用之前提前获知。这种情况下,一个函数有一个或多个参数预先就能用上,以便函数能用更少的参数进行调用。例如:In [9]: from functools import partialIn [10]: def add(a,b): ....: return a+b ....: In [11]: add(4,3)Out[11]: 7In [12]: plus = partial(add,100)In [13]: plus(9)Out[13]: 109In [14]: plus2 = parti...
阅读全文
摘要:1.列表推导式书写形式: [表达式for变量in列表] 或者 [表达式for变量in列表if条件]2.举例说明:#!/usr/bin/python# -*- coding: utf-8 -*-li = [1,2,3,4,5,6,7,8,9]print [x**2 for x in li]print [x**2 for x in li if x>5]print dict([(x,x*10) for x in li])print [ (x, y) for x in range(10) if x % 2 if x > 3 for y in range(10) if y > 7 if
阅读全文
摘要:一、web服务器的实现 web服务器逻辑实现了HTTP协议和相关的TCP连接处理,管理着web资源,并负责提供Web服务器的管理功能。web服务器逻辑和操作系统共同负责管理TCP连接。底层操作系统负责管理底层计算机系统的硬件细节,并提供TCP/IP网络支持,负责装载web资源的文件系统以及控制当前计算活动的进程管理功能。二、web服务器是如何处理HTTP事务的 1.建立连接- 接受一个客户端的连接 2.接受请求- 从网络中读取一条http请求报文 3.处理请求- 对报文进行解释,并采取行动 4.访问资源- 访问报文指定的资源 5.构造响应- 创建带有正确首部的http响应报文 6...
阅读全文
摘要:一、http是如何使用tcp连接的? http连接本质就是tcp连接和一些使用连接的规则。所有的http通讯都是由tcp/ip来承载的。tcp/ip是全球计算机及网络设备都在使用的一种常用的分组交换的网络分层协议集。客户端程序打开一条tcp/ip连接。连接到可能运行在世界任何地方的服务器应用程序。 1.tcp流是分段的,由ip分组传送 网络协议栈 http要传送一条报文的时候,会以流的形式将报文数据的内容通过一条打开的TCP连接按照顺序传输。TCP收到数据流后,会将数据流分成被称之为段的小数据块,并将段封装在ip分组中,通过因特网进行传输,见下图。这些工作都是TCP/IP软件来处理...
阅读全文
摘要:在上面的文章中,我写了python中的一些特性,主要是简单为主,主要是因为一些其他复杂的东西可以通过简单的知识演变而来,比如装饰器还可以带参数,可以使用装饰类,在类中不同的方法中调用,不想写的太复杂,接下来,我打算写一下python 与数据结构,以下是提纲:一、python数据结构之单链表的实现二、python数据结构之双链表的实现三、python数据结构之栈、队列的实现四、python数据结构之二叉树的实现五、python数据结构之二叉树遍历的实现六、python数据结构之图的实现七、python数据结构之图深度优先和广度优先八、python排序算法的实现-冒泡九、python排序算法的实现
阅读全文
摘要:1.http协议在网络中的位置: http协议位于TCP协议的上层,http试用tcp来传输其报文数据,tcp在ip的上层。2.浏览器发起连接的过程上述图的过程是:浏览器从url中解析出服务区的主机名将服务器的主机名转换成服务器的ip浏览器将端口号从URL中解析出来浏览器建立tcp的连接浏览器向服务器发动一条http的请求报文服务器向浏览器回送一条http的响应报文关闭连接,浏览器显示文档3. web组件,几个概念( 代理,缓存,隧道,Agent代理) 1.代理:位于客户端和服务器之间的http中间实体 2.缓存:是一种特殊的http代理服务器,可以将经过代理的常用文档复制保存起来。下一...
阅读全文
摘要:1.算法:(设查找的数组期间为array[low, high])(1)确定该期间的中间位置K(2)将查找的值T与array[k]比较。若相等,查找成功返回此位置;否则确定新的查找区域,继续二分查找。区域确定如下:a.array[k]>T 由数组的有序性可知array[k,k+1,……,high]>T;故新的区间为array[low,……,K-1]b.array[k] t: height = mid - 1 else: return array[mid] return -1if __name__ == "__main__": ...
阅读全文
摘要:1、 算法描述:1.先从数列中取出一个数作为基准数。2.分区过程,将比这个数大的数全放到它的右边,小于或等于它的数全放到它的左边。3.再对左右区间重复第二步,直到各区间只有一个数。2、python代码#!/usr/bin/python# -*- coding: utf-8 -*-def sub_sort(array,low,high): key = array[low] while low = key: high -= 1 while low < high and array[high] < key: array[low] ...
阅读全文
摘要:1.osi 7层网络模型2.socket 套接字编程PS:一个从事web开发的人来说,我们是使用http协议来和服务器来进行交互。后面会详细的分析这个过程。
阅读全文
摘要:1.算法: 设有一组关键字{ K 1 , K 2 ,…, K n };排序开始就认为 K 1 是一个有序序列;让 K 2 插入上述表长为 1 的有序序列,使之成为一个表长为 2 的有序序列;然后让 K 3 插入上述表长为 2 的有序序列,使之成为一个表长为 3 的有序序列;依次类推,最后让 K n 插入上述表长为 n-1 的有序序列,得一个表长为 n 的有序序列。2.python代码def insertion_sort(list2): for i in range(1, len(list2)): save = list2[i] j = i wh...
阅读全文
摘要:1.算法:对于一组关键字{K1,K2,…,Kn}, 首先从K1,K2,…,Kn中选择最小值,假如它是 Kz,则将Kz与 K1对换;然后从K2,K3,… ,Kn中选择最小值 Kz,再将Kz与K2对换。如此进行选择和调换n-2趟,第(n-1)趟,从Kn-1、Kn中选择最小值 Kz将Kz与Kn-1对换,最后剩下的就是该序列中的最大值,一个由小到大的有序序列就这样形成。2.python 代码:def selection_sort(list2): for i in range(0, len (list2)): min = i for j in range(i + 1, ...
阅读全文
摘要:1.算法描述:(1)共循环 n-1 次(2)每次循环中,如果 前面的数大于后面的数,就交换(3)设置一个标签,如果上次没有交换,就说明这个是已经好了的。2.代码#!/usr/bin/python# -*- coding: utf-8 -*-def bubble(l): flag = True for i in range(len(l)-1, 0, -1): if flag: flag = False for j in range(i): if l[j] > l[j + 1]: ...
阅读全文
摘要:首先有一个概念:回溯 回溯法(探索与回溯法)是一种选优搜索法,按选优条件向前搜索,以达到目标。但当探索到某一步时,发现原先选择并不优或达不到目标,就退回一步重新选择,这种走不通就退回再走的技术为回溯法,而满足回溯条件的某个状态的点称为“回溯点”。深度优先算法:(1)访问初始顶点v并标记顶点v已访问。(2)查找顶点v的第一个邻接顶点w。(3)若顶点v的邻接顶点w存在,则继续执行;否则回溯到v,再找v的另外一个未访问过的邻接点。(4)若顶点w尚未被访问,则访问顶点w并标记顶点w为已访问。(5)继续查找顶点w的下一个邻接顶点wi,如果v取值wi转到步骤(3)。直到连通图中所有顶点全部访问过为止。广.
阅读全文
摘要:python数据结构之图的实现,官方有一篇文章介绍,http://www.python.org/doc/essays/graphs.html下面简要的介绍下:比如有这么一张图: A -> B A -> C B -> C B -> D C -> D D -> C E -> F F -> C可以用字典和列表来构建 graph = {'A': ['B', 'C'], 'B': ['C', 'D'], 'C': ['D'], &
阅读全文
摘要:本篇是实现二叉树的三种遍历,先序遍历,中序遍历,后序遍历#!/usr/bin/python# -*- coding: utf-8 -*-class TreeNode(object): def __init__(self,data=0,left=0,right=0): self.data = data self.left = left self.right = rightclass BTree(object): def __init__(self,root=0): self.root = root def is_empty...
阅读全文
摘要:树的定义 树是一种重要的非线性数据结构,直观地看,它是数据元素(在树中称为结点)按分支关系组织起来的结构,很象自然界中的树那样。树结构在客观世界中广泛存在,如人类社会的族谱和各种社会组织机构都可用树形象表示。树在计算机领域中也得到广泛应用,如在编译源程序时,可用树表示源程序的语法结构。又如在数据库系统中,树型结构也是信息的重要组织形式之一。一切具有层次关系的问题都可用树来描述。 树结构的特点是:它的每一个结点都可以有不止一个直接后继,除根结点外的所有结点都有且只有一个直接前驱。 树的递归定义如下:(1)至少有一个结点(称为根)(2)其它是互不相交的子树二叉树: 二叉树是由n(n≥0)...
阅读全文
摘要:这个在官网中list支持,有实现。补充一下栈,队列的特性:1.栈(stacks)是一种只能通过访问其一端来实现数据存储与检索的线性数据结构,具有后进先出(last in first out,LIFO)的特征2.队列(queue)是一种具有先进先出特征的线性数据结构,元素的增加只能在一端进行,元素的删除只能在另一端进行。能够增加元素的队列一端称为队尾,可以删除元素的队列一端则称为队首。地址在http://docs.python.org/2/tutorial/datastructures.html#more-on-lists ,下面的官方的代码。关于栈>>> stack = [3
阅读全文
摘要:和单链表类似,只不过是增加了一个指向前面一个元素的指针而已。示意图:python 实现代码:#!/usr/bin/python# -*- coding: utf-8 -*-class Node(object): def __init__(self,val,p=0): self.data = val self.next = p self.prev = pclass LinkList(object): def __init__(self): self.head = 0 def __getitem__(self, key): ...
阅读全文
摘要:链表的定义: 链表(linked list)是由一组被称为结点的数据元素组成的数据结构,每个结点都包含结点本身的信息和指向下一个结点的地址。由于每个结点都包含了可以链接起来的地址信息,所以用一个变量就能够访问整个结点序列。也就是说,结点包含两部分信息:一部分用于存储数据元素的值,称为信息域;另一部分用于存储下一个数据元素地址的指针,称为指针域。链表中的第一个结点的地址存储在一个单独的结点中,称为头结点或首结点。链表中的最后一个结点没有后继元素,其指针域为空。 如下图所示:单链表的结构:单链表的插入和删除示意图:python实现代码:#!/usr/bin/python# -*- coding..
阅读全文
摘要:算法简要: 追加直接往列表后面添加元素,插入是将插入位置后的元素全部往后面移动一个位置,然后再将这个元素放到指定的位置,将长度加1删除是将该位置后面的元素往前移动,覆盖该元素,然后再将长度减1 #!/usr/bin/python# -*- coding: utf-8 -*-class SeqList(object): def __init__(self,maxsize): self.maxsize = maxsize self.data = range(maxsize) self.last = len(self.data) -1 def...
阅读全文