算法
文章平均质量分 65
fanzy618
这个作者很懒,什么都没留下…
展开
-
【百度面试题】循环有序数组的查找问题
问题:有一个循环有序数组A,如{7,8,9,0,1,2,3,4,5,6},不知道其最小值的位置。那么如何从这样的数组中寻找一个特定的元素呢? 解决:当然,遍历总是一个办法。当然面试的时候回答遍历估计就直接杯具了。 我的想法是将原数组分段,用首元素s,中间元素m和尾元素e,可以将数组分为两个子数组s1,s2,那么,必然有至少一个子数组是有序的。那么如何确定那一段是有序原创 2010-01-31 18:39:00 · 3363 阅读 · 1 评论 -
[code jam 2009试题分析]Qualification Round - Alien Language
题目如下: Problem After years of study, scientists at Google Labs have discovered an alien language transmitted from a faraway planet. The alien language is very unique in that every word consists of exac原创 2010-02-05 09:31:00 · 583 阅读 · 0 评论 -
素数测试
给定一个数字n,检测n是否是一个素数。 最简单的方法就是尝试从2到 n的平方根 是否整除N。 def isPrime(n): for i in range(2, int(pow(n, 0.5))): if n % i == 0: return False return True 另一种方法就是米勒-拉宾素数测试: 一原创 2010-02-07 16:41:00 · 622 阅读 · 0 评论 -
用atomic_t为多线程分配唯一的序号
最近有一个需求,要求在常数区间 [S, E] 里为多个线程分配唯一的序号。 如: S, S+1, S+2, ... E-2, E-1, E, S, S+1,... 困难在于不使用锁的情况下实现线程安全。 最后使用内核提供的 atomic_t 实现。 代码如下: int seq() { static atomic_t curr = ATOMIC_INIT(S); in原创 2013-01-05 12:00:42 · 644 阅读 · 0 评论 -
[code jam 2009试题分析]Qualification Round - Alien Language
题目如下: Problem After years of study, scientists at Google Labs have discovered an alien language transmitted from a faraway planet. The alien language is very unique in that every word consists of ex...2009-09-16 16:14:24 · 145 阅读 · 0 评论 -
[TAOCP第三卷6.1节]顺序搜索
TAOCP第三卷搜索算法中最先讲的就是顺序搜索。 顺序搜索的优点是足够的简单,在数据量足够小的时候速度最快。 而且在无序数据集的时候顺序搜索是唯一可行的方法。 首先是6.1节的程序S [code="c"] int search(int array[],int count, int n) { int i = 0; for(; i < count; i++) { ...2009-06-22 17:54:54 · 136 阅读 · 0 评论 -
用sqlite3实现稀疏矩阵
用python实现了一个稀疏矩阵。 基本思想是3元组(行坐标、列坐标和值)描述矩阵。 将3元组保存在sqlite3的内存表里。 代码如下: [code="python"] import sqlite3 class SparseMatrix: def __init__(self, row_count=2147483647, column_count=2147483647):...2009-07-29 11:49:54 · 151 阅读 · 0 评论