数据结构
wosuodeshijie
这个作者很懒,什么都没留下…
展开
-
栈的链式存储实现
通过链式存储来实现对栈进行的各种操作。#include <stdio.h>原创 2015-08-10 22:09:53 · 402 阅读 · 0 评论 -
栈实现括号匹配
当输入为左括号时,进行压栈操作,当输入为右括号时,判定其与当前栈顶的左括号是否匹配,如果匹配进行弹栈操作,继续判定下面的输入;如果不匹配则输出括号匹配错误。原创 2015-08-11 09:38:24 · 298 阅读 · 0 评论 -
链队列
链队列是队列的链式表示和实现。主要操作包括:初始化、清空、销毁、判断是否为空、插入、删除、队列长度、获取队头元素。在实现的过程中,在队列的结构中添加了count,用来记录队列中元素的个数,这样无论在判定是否为空、求队列长度以及其他操作的实现中都可以简化。原创 2015-08-11 10:51:34 · 390 阅读 · 0 评论 -
线性表链式存储实现各种操作
线性表的实现分为顺序存储实现和链式存储实现,本文将主要讲述链式存储,线性存储将在下一篇讲述。通过链式存储实现对线性表的各项操作,包括初始化、创建、获取特定位置上的元素、获取线性表长度、插入、删除、定位Locate、销毁、合并两个链表以及单链表的就地逆置。 #include #include #include #include typedef struct node{原创 2015-07-29 20:36:20 · 1879 阅读 · 0 评论 -
栈的顺序存储实现
栈是一种重要的线性结构。从数据结构的角度讲,栈是线性表其特殊性在于栈的基本操作是线性表操作的子集,是操作受限的线性表。栈的特点是仅在表尾进行插入和删除操作的线性表,表尾是栈顶(top),表头是栈底,遵循后进先出的原则。因为栈是特殊的线性表,所以栈的实现也可以通过两种方式:顺序存储和链式存储。 这里主要讲栈的顺序存储实现,进行的操作主要包括:初始化、取栈顶、入栈、出栈、计算栈长度、销毁栈。原创 2015-08-10 21:26:42 · 410 阅读 · 0 评论 -
循环队列
队列的特点是遵循先进先出的原则,在一端进行插入在另一端进行删除,允许插入的一端是队尾,允许删除的一端是队头。循环队列是队列的顺序化实现方式。将主要包括初始化、入队、出队、求队列元素个数的操作。原创 2015-08-11 10:06:46 · 462 阅读 · 0 评论 -
二叉树先序、中序、后序遍历算法的实现
二叉树每个结点至多只有两颗子树,并且子树有左右之分。二叉树的遍历是二叉树的一项重要操作。二叉树的每一棵子树都还是一棵二叉树,因为此特性在实现二叉树的遍历的时候可以分为递归遍历和非递归遍历。原创 2015-08-11 16:49:47 · 944 阅读 · 0 评论