算法
youqika
这个作者很懒,什么都没留下…
展开
-
牛顿法开方(10000以内)
相比欧拉法,收敛速度更快,Quake-III中平方根倒数速算法就是基于牛顿法(解析:https://www.bilibili.com/video/av52050885/)import sysfrom bisect import bisect_left''' 平方数表 '''square_num = [ 0, 1, 4, 9, 16, 25, 36, 49, 64, 8...原创 2019-12-31 10:25:51 · 1220 阅读 · 0 评论 -
香克斯变换求π
#! /usr/bin/env python#-*-coding:utf8-*-def shanks_once(series): rslt = list() for i in range(1, len(series)-1): nm1, n, np1 = series[i-1], series[i], series[i+1] item = (...原创 2018-06-22 17:42:21 · 2630 阅读 · 0 评论 -
打印所有小写字母所有可能的组合
#include <stdio.h>#include <stdlib.h>// 组合而不是排列int main(int argc, char *argv[]){ for (int i = 1; i < (1 << 27); ++i) { // 每个小写字母占一位 for (int j = 0; j < 32; ++j) { if (i & (1原创 2017-04-19 10:16:19 · 773 阅读 · 0 评论 -
Search in Rotated Sorted Array
Suppose a sorted array is rotated at some pivot unknown to you beforehand.(i.e., 0 1 2 4 5 6 7 might become 4 5 6 7 0 1 2).You are given a target value to search. If found in the array return its原创 2014-11-19 23:18:10 · 505 阅读 · 0 评论 -
蓄水池抽样
http://blog.cloudera.com/blog/2013/04/hadoop-stratified-randosampling-algorithm/转载 2014-08-23 11:55:53 · 515 阅读 · 0 评论 -
sudoku--Knuth's Algorithm X
http://en.wikipedia.org/wiki/Knuth%27s_Algorithm_Xhttp://www.cs.mcgill.ca/~aassaf9/python/algorithm_x.html转载 2014-07-28 16:01:09 · 1050 阅读 · 0 评论 -
KMP串匹配算法原理及实现
开始是发在公司OA上的,斗胆拿出来跟大家分享,高手莫笑啊,呵呵~ 笔试题: 请实现在文件中查找指定字符串的算法? 我想这道题大多数人都会用BR(还是BF我忘了)算法,不错!就是你最先想到算法。但我这里要讲的是更高级的算法,这是我见过的几种神奇的算法之一,发明这个算法的是三个人,这个算法的名称就是用他们三位名字的首字母命名——KMP。原创 2010-08-04 20:59:00 · 926 阅读 · 0 评论 -
mapreduce
一个map-reduce流水线是一个任务,多条任务同时处理。此图之前的数据分割省略,假定数据已被分成最左边蓝色大小的块,那么传给map的就可能是,key为数据块所属文件及偏移,value为该数据块包含的文本,map函数开始统计,生成一个列表list,输出就是 == , list>,就是每个单词统计一次,无视重复,combine则是去重的,输出的 == , list>,然后进入s原创 2013-12-21 23:40:22 · 536 阅读 · 0 评论 -
最长递增子序列 O(NlogN)算法
http://www.felix021.com/blog/read.php?1587今天回顾WOJ1398,发现了这个当时没有理解透彻的算法。看了好久好久,现在终于想明白了。试着把它写下来,让自己更明白。最长递增子序列,Longest Increasing Subsequence 下面我们简记为 LIS。排序+LCS算法 以及 DP算法就忽略了,这两个太容易理解了。转载 2013-12-05 10:10:23 · 597 阅读 · 0 评论 -
二分查找真的很容易错
int *bsearch(int data[], int n, int x) { int *p_rslt = NULL;原创 2013-07-29 21:12:49 · 948 阅读 · 0 评论 -
快速排序的python实现
#! /usr/bin/env python# -*- coding:utf-8 -*-import sysclass sort(object) : @classmethod def __bubble_sort(cls, data = [], start = 0, end = -1) : if end < 0 : end +=原创 2013-07-30 21:19:17 · 744 阅读 · 0 评论 -
位运算实现加法
#include #include #define __DEBUG__ 1int MyAdd(int a, int b){ /* 定理1: * if (0 == (a & b)) { * a + b == a ^ b; * } * 换句话说就是,如果两数相加时没有进位,则加法运算可由异或运算代替。 * 两数相原创 2012-03-20 20:29:36 · 1925 阅读 · 0 评论