![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
文章平均质量分 88
hhmy77
计算机研究生在读,公众号:code路漫漫
展开
-
BST树操作
文章目录结构定义size()get()put()deleteMin()min()delete() 出自《算法》 这部分《算法》里面写得很好,里面有一些操作是以前注意到的,特地整理下 涉及到BST的插入、删除 结构定义 private Node root; // root of BST private class Node { private Key key; // sorted by key private Val原创 2021-02-25 17:13:25 · 120 阅读 · 0 评论 -
二叉树的遍历方法总结
文章目录前言结构定义概述前序递归迭代中序递归迭代后序递归迭代基于中序迭代基于翻转的迭代前、中、后序迭代的统一解决方法层次迭代 前言 之前写了一篇文章记录二叉树的迭代遍历,最近在刷树的题目,有必要再重新整理一下,之前用C++描述,这次改为用Python描述 注:本文没有囊括所有遍历方法,本文只记录作者平常使用的遍历方法 结构定义 # Definition for a binary tree node. class TreeNode: def __init__(self, val=0, left=No原创 2020-11-04 21:49:45 · 432 阅读 · 0 评论 -
二叉树迭代(非递归)遍历方法
文章目录结构定义思路前序迭代方法一 通用方法方法二中序迭代方法一 通用方法后序迭代方法一 通用方法方法二颜色标记法 所有方法都可以在力扣上验证 前序题目链接 中序题目链接 后序题目链接 这里只写出我会的方法,有更好的方法可以补充???? 结构定义 // Definition for a binary tree node. struct TreeNode { int val; Tr...原创 2020-01-05 13:57:29 · 418 阅读 · 0 评论 -
[数据结构]图的思维导图
图的概念非常多,不做思维导图很容易混淆原创 2019-07-25 21:35:16 · 2762 阅读 · 1 评论 -
C/C++两个版本实现单链表
文章目录前言代码功能c++版c版本 前言 在devc++上面基本上没有使用c++的库,但是使用了初始化,重载,bool类型等c++有但是c没有的语法,代码只有保存.cpp文件才能编译通过,而保存.c文件的话编译会报无数多个语法的错,代码逻辑上是没有问题的。感觉习惯写c++了直接写c的话还是很麻烦 代码功能 功能一览 1.头插法建表 1.1直接读输入建表 1.2从文件中读路径建表 2.尾插法建表 ...原创 2019-04-12 12:33:11 · 274 阅读 · 0 评论 -
打印二叉树的方法
层序遍历 之前学到层序遍历的方法,分组打印每一层,但是效果似乎不是很好。因为还需要自己判断 //层序遍历分组输出 vector<vector<char> >levelGroup(TreeNode* root) { queue<TreeNode*>que; que.push(root); vector<vector<char> >an...原创 2018-11-17 22:11:02 · 9664 阅读 · 3 评论 -
二叉树的创建搜索以及遍历,简单易懂
包括了前中后递归和迭代写法,以及层序遍历分组输出,还有搜索修改子串,求深度节点数叶子节点数 有时间再写一个二叉搜索树的版本,然后再把这个版本写好看点 #include<bits/stdc++.h> using namespace std; //前 中 后序 层序遍历二叉树 创建,搜索修改二叉树 struct TreeNode{ char val; TreeNode* left;...原创 2018-11-09 16:14:34 · 232 阅读 · 0 评论 -
LeetCode 链表翻转相关(24 25)
思路 链表反转这种题,上个星期我还是不会做的,但是自从学会了前插法,写起来就游刃有余的。 下面介绍下前插法 新建一个空节点作为反转链表的表头 将待反转链表的头结点取出,用一个指针指向头结点的下一个结点,然后将头结点指向新链表的表头 新链表的指针指向插入的头结点,待反转链表的表头为之前存放的旧结点的next结点 重复上述操作,直到反转链表全部插入到新链表中 返回新链表的头结点即可 这样看着不好理解...原创 2018-10-23 20:21:55 · 190 阅读 · 0 评论 -
[数据结构]利用堆栈求解算术表达式
c语言版的 #include&lt;iostream&gt; #include&lt;stdio.h&gt; #define MAXSIZE 100 using namespace std; struct SqStack{ double *base; double *top; double SatckSize; }s_val; struct SqStack_ter...原创 2018-05-29 21:04:33 · 1630 阅读 · 0 评论