孙中明
孙中明
全部文章
数据结构&am...
Ajax(8)
C/C++(2)
Java&&javaEE(20)
Memcache(7)
opencv(1)
openstack(1)
PHP(32)
Python(27)
python数据采集(4)
Redis(12)
Smarty(4)
TCP/IP&&HTTP 协议(1)
Web developer(17)
大数据(1)
操作系统&&运维(6)
数据库&&优化(4)
未归档(7)
解决方案(50)
资源共享(2)
软件设计师(29)
面试题汇(1)
归档
标签
去牛客网
登录
/
注册
1024
全部文章
/ 数据结构&&算法
(共18篇)
数据结构-基数排序
基数排序(radix sort)属于“分配式排序”(distribution sort),又称“桶子法”(bucket sort)或bin sort,顾名思义,它是透过键值的部份资讯,将要排序的元素分配至某些“桶”中,藉以达到排序的作用,基数排序法是属于稳定性的排序,其时间复杂度为O (nlog(r...
2020-03-12
0
540
数据结构-折半插入排序
折半插入排序是一个基于有序的序列 每次都是在一个已经有序的序列中插入一个新的序列. 时间复杂度: 最好为O(n log2 n),最差O(n^2),平均最差O(n^2) 空间复杂度 是O(1)
2020-01-16
0
480
数据结构-希尔排序
希尔排序(Shell's Sort)是插入排序的一种又称“缩小增量排序”(Diminishing Increment Sort),是直接插入排序算法的一种更高效的改进版本。希尔排序是非稳定排序算法。该方法因D.L.Shell于1959年提出而得名。 希尔排序是把记录按下标的一定增量分组,对每组使...
2020-01-16
0
678
详解又详解KMP中的next和nextval的算法
一、定义 KMP算法是一种改进的字符串匹配算法,由D.E.Knuth,J.H.Morris和V.R.Pratt同时发现,因此人们称它为克努特——莫里斯——普拉特操作(简称KMP算法)。 二、图解原理 以下借用http://www.cnblogs.com/c-cloud/p/3224788.h...
2019-07-13
0
520
推荐数据结构可视化网站
数据结构可视化 https://visualgo.net/zh
2019-06-03
1
583
数据结构-头插法和尾插法
头插法 void HeadCreatList(List *L) //头插法建立链表 { List *s; //不用像尾插法一样生成一个终端节点。 L->next = NULL; for (int i = 0; i < 10; i++) { s = (struct ...
2019-05-01
0
480
哈夫曼树及其应用
1、基本概念 a、路径和路径长度 若在一棵树中存在着一个结点序列 k1,k2,……,kj, 使得 ki是ki+1 的双亲(1<=i<j),则称此结点序列是从 k1 到 kj 的路径。 从 k1 到 kj 所经过的分支数称为这两点之间的路径长度,它等于路径上的结点数减1. ...
2019-01-17
0
524
树、森林和二叉树的转换
1、树转换为二叉树 由于二叉树是有序的,为了避免混淆,对于无序树,我们约定树中的每个结点的孩子结点按从左到右的顺序进行编号。 将树转换成二叉树的步骤是:(1)加线。就是在所有兄弟结点之间加一条连线;(2)抹线。就是对树中的每个结点,只保留他与第一个孩子结点之间的连线,删除它与其它孩子结点之间的连线;...
2018-03-13
0
515
【算法】KMP经典算法,你真的懂了吗?
有关KMP算法的书籍、帖子、博客铺天盖地,但是你真的能看懂?你知道为什么要有next数组,next数组到底什么意思,又该怎么求next数组,有了next数组之后又该怎样判断模式串和主串是否匹配成功?本文绝对不是讲解KMP算法最细致的一篇文章,但却是为了解决大家的疑惑而写的一篇文章。 KMP的概念 首...
2018-03-12
0
372
数据结构--链表
链表的种类 单链表 循环链表 双链表 链表的操作 单链表的节点删除 单链表的节点插入 双链表节点的...
2018-01-20
0
402
首页
上一页
1
2
下一页
末页