algorithm
iteye_18468
这个作者很懒,什么都没留下…
展开
-
binary search
binary search in sorted array: package me.util.algorithm;/** * binary search util * @author eric * @date 2010-8-29 下午07:09:41 */public class BinarySearchUitl { public static v...2010-08-29 19:35:12 · 119 阅读 · 0 评论 -
priority queue
[b]priority queue[/b]priority queue , 基于 heap,封装了一些操作而实现 优先级队列 的功能,------[b]分类:[/b]* max-queue: 对应 max-heap, 用于取出最大的值, 应用: 任务队列 (高优先级先执行)* min-queue...2010-12-22 00:11:44 · 148 阅读 · 0 评论 -
quick sort
[b]quicksort[/b]------[b]quicksort overview[/b]quicksort 在实际应用中 非常出色,时间复杂度: 理论上最差是:O(n^2), 实际应用中:平均可达到 O(n * lg(n)),且其中的 常量 比较小,空间复杂度: 空间占用比较小,有优势, 即使在 虚拟...2011-01-01 20:26:42 · 98 阅读 · 0 评论 -
counting sort
[b]counting sort[/b]------[b]counting sort 概述[/b]输入是 0-k 之间的整数,通过 计算比每个值小的值的个数来排序,------[b]性能[/b]不是 comparation sort,时间复杂度是 O(n)空间复杂度是 O(n)------[b]排序步骤[/b]* 求出 最小...2011-01-02 20:36:48 · 66 阅读 · 0 评论 -
Medians and Order Statistics (次序统计)
[b]Medians and Order Statistics[/b]------[b]概述[/b]Order Statistics: 次序统计,即 找出 n 个数中 排在 第 i 位 的那个数,记为 ithMedians: 中位数,排在中间的数,------[b]Medians 的取值[/b]假设所有的数都不相同,则:...2011-01-03 14:36:15 · 405 阅读 · 0 评论 -
queue (用 java 简单实现)
queue ------结构 线性存储,1个出口 & 1个入口,first-in, first-out ------操作 * insert (enqueue) 在入口处添加, 时间复杂度:O(1)* delete (dequeue) 在出口处删除, 时间复杂度:O(1)* ------实现方案: ...2011-02-03 01:45:56 · 93 阅读 · 0 评论 -
linkedlist - java 简单实现
linked list 链表, ------特点: linkedlist 相对于基于数组的 list: * 在中间 插入 & 删除 时,效率较高,只影响 前结点的next指针 和 后结点的pre指针, * 根据 index get() 时 效率较低,需要一个个查找 * ------结构: 每个元素包含:* v...2011-02-11 21:29:29 · 119 阅读 · 0 评论 -
An Introduction to Algorithm 2nd 's contents
算法导论(2nd) 结构* [b] (total 984 page,8 part)[/b] * [b]part 1[/b] (chp 1 - 5) foundation of algorithms (基础入门) * [b]chp 1[/b] an overview of algori...2010-08-11 23:02:47 · 112 阅读 · 0 评论 -
c - word counter (binary-tree)
c - word counter (binary-tree) count ascii word in a file, written by c, using binary-tree, code: word_counter.c:#include <stdio.h>#include <string.h>#include <...2012-05-09 14:17:45 · 120 阅读 · 0 评论 -
heap sort
[b]heapsort[/b]------[b]heap 数据结构[/b]heap 是以 nearly complete binary tree 存储数据的,tree height = lg(n+1),max-heap: A[i] >= A[sub(i)], 即 父节点 >= 子节点------[b]heapsort 基本原理[/b]...2010-12-18 19:09:41 · 75 阅读 · 0 评论 -
random select
random select problem: select m number from 0 - (n-1) randomly, ------solution 1 for each number in 0 - (n-1), in increasing order, generate a random number x, using "(x%remain) <...2011-08-28 01:00:26 · 342 阅读 · 0 评论 -
sparse data structure - matrix
sparse data structure sparse data structure - means most element are empty(or have a very same value), so we can try to use some better data structure to reduce memory use, ------matrix...2011-08-18 20:03:53 · 198 阅读 · 0 评论 -
已排序数组 a,求其元素的绝对值 共有多少个不同的值
已排序数组 a,求其元素的绝对值 共有多少个不同的值? 思路: 2个 index,从最接近0的2个元素开始向2端遍历,每次先比较2个index所在的元素的绝对值,取小值,与最后1次的值比较,如果大于,则 count++,并将该值设为 最后一次的值,然后将小的那个 index 向前进的方向加1, 算法的复杂度: 因为只要遍历1次,因此复杂度是 o(n),...2010-08-29 20:41:49 · 242 阅读 · 0 评论 -
排序算法:求 长度为 n的 数组中,最大的 m个数
排序:数组 length=m,从其中中取出最大的 n 数字,n<=m import java.util.Random;import java.util.TreeSet;/** * 排序算法:数组 length=m,从其中中取出最大的 n 数字,n<=m * 思路:用 TreeSet 存放结果,可以自动排序,先取前100个放到 TreeSet,然...2010-08-31 10:16:44 · 485 阅读 · 0 评论 -
bit_array - simple use
bit array,use less memory to describe a set of int number, example:/** * use bit string to store int numbers,if char[n] = 1,then n is include,else n is not exclude, */#include <stdio....2011-05-28 23:47:06 · 73 阅读 · 0 评论 -
z 字型 读取 矩阵
以 z 字型 读取 矩阵,------[b]思路[/b]:以矩阵的 左斜切线 为读取单元,步骤:* 求出 左斜切线 个数* 遍历 左斜切线 * 求出 左斜切线的 长度 * 求出 左斜切线的 起点、止点 * 遍历 左斜切线,遍历方向 由 左斜切线的index 决定, * * ------[b]...2010-10-23 16:50:03 · 297 阅读 · 0 评论 -
insertion sort
[b]insertion sort[/b]------[b]insertion sort 原理[/b]不断将数据插入已排序的序列,每次插入时,逐个比较,直到找到比自己大的则插入,时间:o(n^2)内存:o(1)------[b]例子[/b]:* [b]javascript 代码[/b][code="javascript"]var arr_...2010-10-28 00:21:02 · 86 阅读 · 0 评论 -
binary search - c
binary search - c (simple) search - basic: /** @author kuchaguangjie@gmail.com */#include <stdio.h>/** * binary search (simple) * * @param * arr pointer of array * @param...2011-08-06 12:07:47 · 92 阅读 · 0 评论 -
max sub_sequence - c
max sub_sequence - c /* problem: there is a sequence of number,could be positive or negative, find out the sub sequence which has max sum, solution: loop the sequence, use max...2011-08-10 01:02:54 · 119 阅读 · 0 评论 -
merge sort
[b]merge sort[/b]合并排序------ [b]merge sort 原理 [/b]采用 divide-and-conqure,即 分而治之,将问题分成最小的单元,然后从最小的解决,再不断合并,合并中继续解决,直到完成,------[b]例子:[/b] * js 代码[code="js"] var arr_merge= ...2010-12-01 23:37:47 · 106 阅读 · 0 评论 -
c - linkedlist
c - linkedlist store ordered number in linkedlist, no repeat. code: linkedlist_test.c: #include <stdio.h>#include <stdlib.h>extern struct linkedlist { int num;...2012-05-10 14:52:13 · 97 阅读 · 0 评论