
数据结构与算法
数据结构相关
CoderWriter
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
最短路径
Floyd Floyd算法可以处理带有负权边的图,但不能处理带有负权回路的图 算法思想:通过引入中间边来松弛两点之间的距离 算法核心语句://floyd算法:求图上任意两点之间的最短路径for(int k =1;k<=n;++k){ for(int i=1;i<=n;++i){ for(int j=1;j<=n;++j){ if(e[i][j]>e[i][k]+e[k][j]){ e原创 2020-10-02 19:39:21 · 215 阅读 · 0 评论 -
素数判断
普通方法复杂度:O(n*sqrt(n))bool is_prime(int n){ int m=(int)sqrt(n); for(int i=2;i<=m;++i){ if(n%i==0) return flase; } return true;}6倍法原理:当x大于等于5时可以发现x可以写成6n-1,6...原创 2019-12-04 13:50:01 · 208 阅读 · 0 评论 -
线索二叉树
概念:在一棵具有n个节点二叉树中,若采用二叉链表存储结构,在2n个指针域中有n+1个空指针域,线索二叉树就是利用这些空指针来指向节点的前驱节点或后驱节点从而使二叉树的某些操做得到优化的目的。...原创 2019-05-25 18:00:45 · 344 阅读 · 0 评论 -
二叉树深度问题
递归求解:int SECUR_BEDEPTH(BTREE T){ int ldepth=0,rdepth; if(T){ ldepth=BEDEPTH(T->lchild); rdepth=BEDEPTH(T->rchild); return ldepth>rdepth? ldepth+1:rdepth+1; ...原创 2019-05-17 19:44:47 · 461 阅读 · 0 评论 -
二叉树的遍历
前序遍历递归算法:void RECUR_PREORDER(BTREE T){ if(T){ VISIT(T); PREORDER(T->lchild); PREORDER(T->rchild); }}非递归算法:核心思想:设置一活动指针p...原创 2019-05-17 19:56:16 · 301 阅读 · 0 评论 -
KMP模板
kmp模板://得到next数组void get_next(string s,int& next){ int i=0; int j=-1; next[i]=j; int len=s.length(); while(i<len){ if(j==-1||s[i]==s[j]){ ++i; ...原创 2019-12-15 12:25:14 · 162 阅读 · 0 评论