![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
文章平均质量分 96
莫影老师
莫影老师
展开
-
数据结构-栈
栈:数据处理的方式是:FILO (先进后出的方式)数组栈://ADT:抽象数据类型#include <iostream>using namespace std;template <class T>class stack{public: virtual ~stack(){} //判断是否为空 virtual bool empty() const = 0; ...原创 2017-09-12 20:27:32 · 607 阅读 · 0 评论 -
回溯法(八皇后问题)及C语言实现
回溯法回溯法,又被称为“试探法”。解决问题时,每进行一步,都是抱着试试看的态度,如果发现当前选择并不是最好的,或者这么走下去肯定达不到目标,立刻做回退操作重新选择。这种走不通就回退再走的方法就是回溯法。例如,在解决列举集合 {1,2,3} 中所有子集的问题中,就可以使用回溯法。从集合的开头元素开始,对每个元素都有两种选择:取还是舍。当确定了一个元素的取舍之后,再进行下一个元素,直到集合...原创 2019-03-07 16:52:11 · 4734 阅读 · 0 评论 -
还有这种操作?C语言插入排序算法,一点就透
还有这种操作?C语言插入排序算法,一点就透插入排序算法是所有排序方法中最简单的一种算法,其主要的实现思想是将数据按照一定的顺序一个一个的插入到有序的表中,最终得到的序列就是已经排序好的数据。直接插入排序是插入排序算法中的一种,采用的方法是:在添加新的记录时,使用顺序查找的方式找到其要插入的位置,然后将新记录插入。很多初学者所说的插入排序,实际上指的就是直接插入排序算法,插入排序算...原创 2019-03-09 14:29:41 · 835 阅读 · 0 评论 -
数据结构-二叉搜索树
数据结构-二叉搜索树二叉查找树(Binary Search Tree),(又:二叉搜索树,二叉排序树)它或者是一棵空树,或者是具有下列性质的二叉树: 若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值; 若它的右子树不空,则右子树上所有结点的值均大于它的根结点的值; 它的左、右子树也分别为二叉排序树。原理二叉排序树的查找过程和次优二叉树类似,通常采取二叉链表作为二叉排序树的存储结构。中序...原创 2017-11-25 21:01:19 · 466 阅读 · 0 评论 -
数据结构-普通二叉树
1.二叉树-----普通树1.1 二叉树长什么样子1.1.1 空二叉树 1.1.2 只有根结点的二叉树1.1.3 只有左子树1.1.4 只有右子树1.1.5 左右子树都健全满二叉树 除了叶子节点之外,所有节点都是满的完全二叉树 除了最后一个节点以及叶子节点,剩下的结点要是满的 1.2 基本概念1.2.1 根结点1.2.2 左子树指针,右子树指针,左子树,右子树1.2.3 兄弟节点/姊妹节...原创 2017-11-25 20:51:05 · 390 阅读 · 0 评论 -
数据结构-矩阵
#include <iostream>#include <stdlib.h>using namespace std;//矩阵类template <typename T>class matrix{ friend ostream& operator<<(ostream& out,const matrix<T>&a...原创 2017-10-06 21:48:33 · 771 阅读 · 0 评论 -
数据结构-单链表
/*--------------------------------- 1.创建过程 2.操作过程 3.显示过程--------------------------------- 创建链表 (创建表头) 创建节点 插入节点 (表头,表尾,指定位置) 判断链表是否为空 删除节点 (表头,表尾,指定位置) 打印链表--------------------------------...原创 2017-09-11 22:26:22 · 915 阅读 · 0 评论 -
数据结构-双向循环链表
双向循环链表的增删改查,遍历与打印原创 2017-09-18 20:57:58 · 909 阅读 · 0 评论 -
数据结构-线性表
数组实现线性表:#include <iostream>#include <sstream>#include <string>using namespace std;//纯虚函数//ADT抽象的过程template <class T>class LinearList{public: virtual ~LinearList(){};...原创 2017-09-25 19:02:05 · 677 阅读 · 0 评论 -
数据结构-队列
#include <iostream>#include <string>using namespace std;template<class T>class queue{public: virtual ~queue() {} virtual bool empty() const = 0; //判空 virtual int size() c...原创 2017-09-15 18:59:47 · 736 阅读 · 0 评论 -
C语言单链表冒泡排序
前言大家在做学生成绩管理系统的时候,其中一个功能是要实现对学生的成绩从高到低排名,如果数据是存储在数组中的话,会很容易实现,但是这时成绩信息作为结构体成员被保存在单链表中,所以在每一轮交换排序的时候,地址不像数组那样可以简单通过下标转换而改变 所以在这里给大家分享下单链表的冒泡排序 。冒泡排序先说说冒泡排序的中心思想:通过对无序序列的相邻元素两两比较交换,每次把最大(小)的数据放在最后...原创 2019-03-18 14:52:17 · 12071 阅读 · 12 评论