快速排序是由东尼·霍尔所发展的一种排序算法。在平均状况下,排序 n 个项目要Ο(n log n)次比较。在最坏状况下则需要Ο(n2)次比较。
快速排序使用分治法(Divide and conquer)策略来把一个串行(list)分为两个子串行(sub-lists)。
步骤为:
从数列中挑出一个元素,称为 "基准"(pivot),重新排序数列,所有元素比基准值小的摆放在基准前面,所有元...
分类:
编程语言 时间:
2014-08-23 23:03:11
阅读次数:
485
问题
寻找完全数。
思路说明
所谓完全数,从维基百科的完全数词条中得到:
[完全数,又称完美数或完备数,是一些特殊的自然数:它所有的真因子(即除了自身以外的约数)的和,恰好等于它本身,完全数不可能是楔形数。 例如:第一个完全数是6,它有约数1、2、3、6,除去它本身6外,其余3个数相加,1+2+3=6,恰好等于本身。第二个完全数是28,它有约数1、2、4、7、14、28...
分类:
其他好文 时间:
2014-07-16 17:27:40
阅读次数:
177
问题
用递归方式遍历二叉树
思路说明
遍历二叉树的方法有广度优先和深度优先两类,下面阐述的是深度优先。
以下图的二叉树为例:
先定义三个符号标记:
访问结点本身(N)遍历该结点的左子树(L)遍历该结点的右子树(R)
有四种方式:
前序遍历(PreorderTraversal,NLR):先访问根结点,然后遍历其左右子树中序遍历(InorderT...
分类:
其他好文 时间:
2014-07-14 14:06:12
阅读次数:
217
问了 30 个技术群,也问了无数的前辈,真是各种不礼貌,吃了无数闭门羹,还是自己看着有点眉目了
还有 wiki 的伪代码看了总觉得奇怪,于是看了同一页面其他语言翻译过来的伪代码,
发现葡萄牙语和俄罗斯语那里的 if 判断都还缺少一个条件
国内的资料比较少,这几份学习资料不错,比我稀里糊涂的思路要好,分享下:
http://www.liafa.univ-paris-diderot.f...
分类:
编程语言 时间:
2014-07-05 10:40:37
阅读次数:
331
仿写 networkx 的功能
# -*- coding: cp936 -*-
'''
简单图 Graph:
要求:
关于节点:
功能1.add_node:
通过 add_node 一次性加一个节点
字符串,数字,任何可以被哈希的 python 对象都可以当做节点
...
分类:
其他好文 时间:
2014-07-01 08:15:24
阅读次数:
281
第一次接触编程,你将面对两大难题:1、对所要使用的编程语言的语法和语义不甚了了。2、不知道如何通过编程来解决问题。作为一名新手,你会尝试同时来解决这两个难题:一边熟悉编程语言的语法语义,一边考虑如何靠编程解决问题。这是一个循序渐进的过程,万事开头难,务必保持..
分类:
编程语言 时间:
2014-06-29 21:24:23
阅读次数:
417
凯莱公式:
spanning_trees_num( G ) = spanning_trees_num( G - e ) + spanning_trees_num( G · e )
矩阵树定理:
G 对应的拉普拉斯矩阵(度矩阵 - 邻接矩阵)L( G )
删除任意一行一列得到的行列式的值det( L*( G ) )
即生成树的个数,即spanning_trees_num( G...
分类:
其他好文 时间:
2014-06-24 22:05:54
阅读次数:
237
问题
查找某个值在list中的位置
解决思路
可以用折半查询的方法解决此问题。
解决(Python)
#! /usr/bin/env python
#coding:utf-8
#折半查找某个元素在list中的位置
def half_search(lst,value,left,right):
length = len(lst)
while left<ri...
分类:
其他好文 时间:
2014-06-19 11:09:48
阅读次数:
527
在Python中本来不存在所谓大整数溢出问题。但是,我看到了一个叫做阿拉伯乘法的方法,是一个古老的计算两个数相乘的问题。于是用它来计算两个大整数相乘,感觉还不错。...
分类:
其他好文 时间:
2014-06-15 17:46:10
阅读次数:
266
Latent Semantic Analysis (LSA)也被叫做Latent Semantic Indexing(LSI),从字面上的意思理解就是通过分析文档去发现这些文档中潜在的意思和概念。假设每个词仅表示一个概念,并且每个概念仅仅被一个词所描述,LSA将非常简单(从词到概念存在一个简单的映射关系)
不幸的是,这个问题并没有如此简单,因为存在不同的词表示同一个意思(同义词),一个词表示多个...
分类:
其他好文 时间:
2014-06-14 11:04:45
阅读次数:
399