
数据结构
bEArInSPing
想像春天的熊一样
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
C语言实现链表基本操作
C语言实现链表基本操作之前说过顺序表的基本操作。显然,顺序表有一个很大的缺点,就是做插入删除操作的时候,往往要做很大量的元素移动的操作。这里我们讨论另外一种线性表的表示方法——链式存储结构。由于它不需要逻辑上的相邻的元素在物理位置上也相邻,因此它没有顺序存储结构所具有的弱点,但是同时也失去了顺序表的可随机存取的有点。 结构 #include <stdio.h> #include <stdlib.h>原创 2017-04-10 20:46:17 · 649 阅读 · 0 评论 -
C语言实现顺序表增删查改操作
C语言实现顺序表增删查改操作线性表是最常用且最简单的一种数据结构。线性表的顺序表示指的是用一组地址连续的存储单元依次存储线性表的数据元素。结构如下图图片来自百度 为了描述顺序表,我们声明一个结构,如下: #define LIST_INIT_SIZE 100 //线性表存储空间的初始分配量 #define LIST_INCREMENT 10 //线性表存储空间的分配增量typedef int Elem原创 2017-04-10 17:06:03 · 8092 阅读 · 0 评论 -
C语言栈的实现进制转换
栈是限定仅在表尾进行操作的线性表。因此,对栈来说,表尾端有其特殊含义,成为栈顶,相应地,表头端称为栈底。下面用C实现栈的基本操作以及利用栈来实现一个进制转换程序 #include <iostream> #include <stdio.h> #include <stdlib.h>using namespace std; #define STACK_INIT_SIZE 100 #define STACK原创 2017-04-16 17:47:51 · 1971 阅读 · 1 评论 -
C语言实现循环队列
队列是一种先进先出的线性表,它只允许在表的一端进行插入,而在另外一端删除元素。简单的说这个就是我们生活中排队的模型。简单的队列实现这里就不说了,简单地给出结构如下:typedef struct{ QElemType * base; int font; //队列头游标 int rear; //队列尾游标 }SqQueue; 以上是简单队列的示意图,图片来自百度,侵删。考原创 2017-04-16 18:33:31 · 1184 阅读 · 0 评论 -
二叉树的前中后序非递归遍历算法实现
二叉树是一种非常重要的数据结构,很多其它数据结构都是基于二叉树的基础演变而来的。原创 2017-04-17 08:12:20 · 1033 阅读 · 0 评论 -
Java实现冒泡排序
冒泡排序原创 2017-04-17 12:03:54 · 250 阅读 · 0 评论 -
Java实现快速排序
快速排序原创 2017-04-17 12:08:33 · 270 阅读 · 0 评论 -
Java实现直接插入排序算法
直接插入排序原创 2017-04-17 12:13:55 · 338 阅读 · 0 评论 -
算法-求二叉树最小深度
算法-求二叉树最小深度基本概念:二叉树的最小深度:从根节点出发到达叶子节点的经过的最少的节点数。上述这个图,最短路径应该是A-E这一支。算法思路: 利用深度优先遍历,递归地返回节点路径长度。递归算法不是很好理解,这里用上图例子说明。对于算法开始,判断是A否节点是否为空,如果是空则返回0。此时想知道A节点的到最小深度的叶子节点要根据A节点的两个叶子节点决定,此时,递归开始,run(root-原创 2017-06-14 13:53:34 · 1809 阅读 · 0 评论