
数据结构
数据结构
_沧海桑田_
ACL/NAACL/EMNLP/COLING审稿人,
MOD大侠梦/MOD禾下霸业作者。
github.com/guotong1988
展开
-
locality-sensitive hashing 简单理解
LSH是为了将向量hash到多个桶里以索引以缩小计算向量相似度时的候选。原创 2021-02-18 12:13:38 · 331 阅读 · 0 评论 -
二叉树左右子树交换的算法
http://wenku.baidu.com/view/0940dd262f60ddccda38a012.html转载 2012-12-10 10:54:15 · 1566 阅读 · 0 评论 -
二叉树转链表
http://blog.youkuaiyun.com/lilypp/article/details/6525256http://www.cnblogs.com/xuxu8511/archive/2012/03/20/2407528.html转载 2012-12-10 15:35:30 · 693 阅读 · 0 评论 -
将二叉树叶子节点用rchild链成一个单链表
#include "stdafx.h" #include using namespace std; typedef struct BinTNode { int data; BinTNode *lchild; BinTNode *rchild; BinTNode(int elemet =转载 2012-12-24 11:28:38 · 1889 阅读 · 0 评论 -
对数据结构中的 堆 的理解有帮助的文章
http://www.cnblogs.com/mingmingruyuedlut/archive/2011/09/20/2182431.htmlhttp://www.dev26.com/blog/article.htm?articleId=61&tmp=1http://zhidao.baidu.com/question/274969602.html 堆排序:http://www转载 2012-09-04 09:53:10 · 508 阅读 · 0 评论 -
堆与堆排序
堆排序与快速排序,归并排序一样都是时间复杂度为O(N*logN)的几种常见排序方法。学习堆排序前,先讲解下什么是数据结构中的二叉堆。二叉堆的定义二叉堆是完全二叉树或者是近似完全二叉树。二叉堆满足二个特性:1.父结点的键值总是大于或等于(小于或等于)任何一个子节点的键值。2.每个结点的左子树和右子树都是一个二叉堆(都是最大堆或最小堆)。当父结点的键值总是大于或等于任何一个子节转载 2012-12-27 16:50:16 · 630 阅读 · 0 评论 -
八皇后
#include #define ROW 8 #define COL 8 #define NUM 8 int a[ROW][COL]; int k = 0; int put( int n) { int i, j; if( n > NUM) { printf( "----------%06d转载 2012-12-10 18:34:47 · 642 阅读 · 0 评论 -
快速排序
http://www.tyut.edu.cn/kecheng1/site01/suanfayanshi/quick_sort.asp 第一次快速排序的具体做法是:设置变量i指向参加排序的记录序列中第一个位置0,变量j指向参加排序的记录序列中最后位置n-1。首先保存记录R0,使得R[0]为空出的位置(空位在前一区),这时,令j向前扫描,寻找小于R0的记录,假设找到的记录是R[ j ],将记录转载 2012-12-14 21:53:41 · 701 阅读 · 0 评论 -
中根序 线索化 二叉树
void thread(ThrTree t){PSeqStack st=createEmptyStack(M);ThrTree p,pr;if(t==NULL)return;p=t;pr=NULL;do{ while(p!=NULL){ push_seq(st,p);转载 2012-12-15 21:06:08 · 761 阅读 · 0 评论 -
KMP
解决这类问题,通常我们的方法是枚举从A串的什么位置起开始与B匹配,然后验证是否匹配。假如A串长度为n,B串长度为m,那么这种方法的复杂度是O (mn)的。虽然很多时候复杂度达不到mn(验证时只看头一两个字母就发现不匹配了),但我们有许多“最坏情况”,比如,A= "aaaaaaaaaaaaaaaaaaaaaaaaaab",B="aaaaaaaab"。我们将介绍的是一种最坏情况下O(n)的算法(这里假转载 2012-12-12 13:53:14 · 715 阅读 · 1 评论 -
对dijkstra算法理解有帮助的文章
http://www.cnblogs.com/SadGeminids/archive/2011/12/29/2306719.html http://wenku.baidu.com/view/1e9c73ef4afe04a1b071ded1.html第二个当题做转载 2012-09-04 11:39:00 · 583 阅读 · 0 评论 -
B-Tree/BTree 的Java实现
public class BTree<Key extends Comparable<Key>, Value> { private static final int M = 4; // max children per B-tree node = M-1 private Node root; // root of the B-tree privat翻译 2015-03-26 10:10:35 · 5707 阅读 · 3 评论 -
B-Tree/BTree 的Java实现
package main;public class BTree { BTreeNode root; // Pointer to root node int t; // Minimum degree BTree(int _t) { t = _t; } void traverse() { if (root != null)翻译 2015-03-30 11:21:47 · 2027 阅读 · 2 评论 -
python B树
安装pip install BTreesfrom BTrees.OOBTree import OOBTreet = OOBTree()t.update({1: "red", 2: "green", 3: "blue", 4: "spades"})可见BTree数据的输入格式原创 2019-07-18 09:52:39 · 1050 阅读 · 1 评论 -
python实现一棵树及其搜索
import numpy as npfrom scipy.spatial.distance import cosinedef findTopNindex(array,N): # return np.argsort(array)[::-1][:N] # 从大到小 return np.argsort(array)[:N] # 从小到大def cos_distance(vect...原创 2019-08-05 16:56:52 · 1345 阅读 · 0 评论 -
求兄弟孩子树的深度
http://wenku.baidu.com/view/87c542896529647d272852d7.html转载 2012-12-09 12:31:40 · 1116 阅读 · 0 评论 -
用栈求表达式的值
http://jpkc.whvcse.com/jpkc/sjjg/kcwz_show.asp?id=91转载 2012-12-07 15:44:49 · 768 阅读 · 0 评论 -
基数排序的例子,给我讲懂了
http://baike.baidu.com/view/1170573.htm转载 2012-09-05 15:03:19 · 1159 阅读 · 0 评论 -
对huffman树理解有帮助的文章
http://zhidao.baidu.com/question/189331885.html http://zhidao.baidu.com/question/237571700.html转载 2012-09-04 10:49:04 · 684 阅读 · 0 评论 -
完全二叉树计算
http://zhidao.baidu.com/question/241831435.html 假设n0是度为0的结点总数(即叶子结点数),n1是度为1的结点总数,n2是度为2的结点总数,由二叉树的性质可知:n0=n2+1,则n= n0+n1+n2(其中n为完全二叉树的结点总数),由上述公式把n2消去得:n= 2n0+n1-1,由于完全二叉树中度为1的结点数只有两种可能0或1,由此得到n0转载 2012-09-05 18:16:51 · 919 阅读 · 0 评论 -
最小生成树 prim算法 讲解
http://www.java3z.com/cwbwebhome/article/article8/83551.html?id=4627http://zh.wikipedia.org/wiki/Prim演算法http://wenku.baidu.com/view/0d15428783d049649b665802.html转载 2012-09-05 14:55:07 · 664 阅读 · 0 评论 -
快速排序 题目及答案
http://blog.youkuaiyun.com/sws9999/article/details/2791812转载 2012-09-06 17:23:11 · 5047 阅读 · 0 评论 -
静态链表
http://jpkc.xaau.edu.cn/sjjg/datastru/zxxx/two%20lesson/234.html一个是游标域(cursor),代替动态指针指示其直接后继在数组中的相对位置转载 2012-09-06 18:34:06 · 605 阅读 · 0 评论 -
中缀表达式 堆栈 详细过程 题目及答案
http://blog.youkuaiyun.com/fonty/article/details/4037446转载 2012-09-06 15:27:39 · 847 阅读 · 0 评论 -
斐波那契查找法
http://see.xidian.edu.cn/cpp/html/1024.html转载 2012-09-06 17:06:08 · 1034 阅读 · 0 评论 -
强连通分量 关节点
有向图强连通分量在有向图G中,如果两个顶点vi,vj间(vi 在一个无向连通图G中,当且仅当删去G中的顶点v及所有依附于v的所有边后,可将图分割成两个或两个以上的连通分量,则称顶点v为关节点。例如,图8.15(a)中的顶点1,3,5,7都是关节点。转载 2012-09-07 17:19:47 · 1588 阅读 · 0 评论 -
B+树的插入和删除
http://hi.baidu.com/halbert_dahai/item/e3eef329985f64899d63d11a转载 2012-12-04 17:01:58 · 5185 阅读 · 0 评论 -
B-树的插入和删除
http://www.kaoyan.com/kaoyan/16/329898/ http://sjjp.tjuci.edu.cn/sjjg/DataStructure/DS/web/chazhao/chazhao9.3.2.5.htm 对关键码序列{20,54,69,84,71,30,78,25,93,41,7,76,51,66,68,53,3,79,35,12,15,6},建立5阶B转载 2012-12-04 16:59:51 · 4525 阅读 · 2 评论 -
把序列 调整成堆 的代码
http://www.java3z.com/cwbwebhome/article/article1/1362.html?id=4745转载 2012-12-07 15:28:06 · 1200 阅读 · 0 评论 -
合并链表
已知两个链表head1 和head2 各自有序,请把它们合并成一个链表依然有序。(保留所有结点,即便大小相同)Node * Merge(Node *head1 , Node *head2){if ( head1 == NULL)return head2 ;if ( head2 == NULL)return head1 ;Node *head = NULL ;Node转载 2012-03-08 14:26:18 · 566 阅读 · 0 评论 -
平衡二叉树
http://zhidao.baidu.com/question/236162891.html转载 2012-09-04 17:19:40 · 575 阅读 · 0 评论