数据结构
单线程的Daniel
程序员养成之路
展开
-
牛客网-剑指offer(Java实现版本)
ps:这也算是一个鸿篇巨制啦,关于牛客网的剑指offer题目终于用Java实现了一遍,其实之前草率的实现了一遍,但是很快就忘了,,,,更过分的是我再写这篇博文的时候,前面的有些题我依旧有一些忘记了,有几道题难度太大,我也是一知半解。太TM难过了。欢迎大家在参考的同时,随时向我提意见,我会很高心和小可爱、小帅哥讨论滴,以加深我的记忆。o( ̄▽ ̄)o谢啦!!☆⌒(*^-゜)v,,,也欢迎大家收藏我的blog,里面会有一些实用或者有趣或者深刻的内容,嘻嘻嘻。二维数组的查找 FindArray替换空格 Repl原创 2020-05-19 12:14:24 · 403 阅读 · 1 评论 -
数据结构之线性表(C++实现)
数据结构之线性表线性表的特点线性表的基本操作操作的实现线性表的特点存在唯一的一个被称作“第一个”的数据元素存在唯一的一个被称作“最后一个”的数据元素除第一个外,集合中的每个数据元素均只有一个前驱除最后一个元素外,集合中的每个数据元素均只有一个后继线性表的基本操作InitList(&L); 构造空的线性表LDestoryList(&L); 销毁...原创 2019-07-27 17:33:31 · 554 阅读 · 0 评论 -
数据结构之七大排序算法(C++实现)
数据结构之排序冒泡排序选择排序冒泡排序较小的数字会如同气泡一样慢慢的漂浮到上面,因此被称为冒泡排序话不多说,见代码:/*交换两个数字*/void mySwap(int *ori,int *des){ int temp=*ori; *ori=*des; *des=temp;}/*冒泡排序*/void bubbleSort(vector<int> &arr,...原创 2019-07-14 17:47:59 · 484 阅读 · 0 评论 -
数据结构之串(C/C++实现)
数据结构之串(C/C++实现)定义串的比较定义串是由零个或者多个字符组成的有限序列,又名叫字符串串中的字符数目n称为串的长度,零个字符的串称为空串串的比较如silly和stupid,第一个字母都是s,我们认为不存在大小差异,而第二个字母,由于i字母比t字母要靠前,所以i<t,于是,我们说silly<stupid...原创 2019-08-04 18:19:48 · 600 阅读 · 0 评论 -
数据结构之栈(C/C++实现)
数据结构之栈(C++实现)定义栈的抽象数据类型栈的顺序存储结构1.结构定义2.进栈操作3.出栈操作两栈共享空间栈的链式存储结构定义栈是仅限定在表尾进行插入和删除操作的线性表。我们把允许插入和删除的一段称为栈顶,另一端称为栈底,不包含任何数据元素的称为空栈。栈又称为后进先出的线性表。简称为LIFO结构。栈的抽象数据类型ADT 栈(stack)Data 同线性表。元素具有相同的类...原创 2019-07-31 22:16:25 · 390 阅读 · 0 评论 -
数据结构之二叉树(C/C++实现)
数据结构之二叉树(C/C++实现)二叉树的特点二叉树的特点特点每个结点最多有两颗子树,所以二叉树不存在度大于2的结点。左子树和右子树是有顺序的,次序不能任意颠倒即使树中只有一个子树,也要区分它是左子树和右子树二叉树的五种基本形态1.空二叉树2.只有一个根节点3.根节点只有左子树4.根节点只有右子树5.根节点只有左子树和右子树特殊二叉树1.斜树所有节点只有左子树的二叉...原创 2019-08-05 22:30:52 · 895 阅读 · 0 评论 -
数据结构之队列(C/C++实现)
数据结构之队列(C/C++实现)定义队列的抽象数据类型循环队列队列的链式存储结构及实现循环队列的C++实现定义队列(queue)是只允许在一端进行插入操作,而在另一端进行删除操作的线性表队列是一种先进先出的线性表(FIFO),允许插入的一端称为队尾,允许删除的一端称为队头队列的抽象数据类型ADT 队列(Queue)Data 同线性表。元素具有相同的类型,相邻元素具有前驱和后...原创 2019-08-01 18:25:54 · 312 阅读 · 0 评论 -
数据结构之图(C/C++实现)
数据结构之图(C/C++实现)图的定义:图的存储结构邻接矩阵邻接表十字链表邻接多重表图的定义:这里面的术语很多:具体的定义请参考这篇文章:https://segmentfault.com/a/1190000013223267图的存储结构邻接矩阵邻接表十字链表邻接多重表具体参考这篇文章https://segmentfault.com/a/1190000015188957...转载 2019-08-12 14:51:33 · 1008 阅读 · 0 评论