
数据结构
刘翾
如果有一天我们淹没在人潮里,那是因为没有努力活得丰盛。
展开
-
二叉树的前序, 中序, 后序非递归算法
什么是前序, 中序, 后序首先先介绍一下三种遍历二叉树的方法: 1. 前序:先根结点后左孩子最后右孩子 2. 中序:先左孩子后根结点最后右孩子 3. 后序:先左孩子后右孩子最后根结点 例如上图中的二叉树我们的遍历输出分别为: 前序: GDAFEMHZ 中序: ADEFGHMZ 后序: AEFDHZMG代码部分#include<cstdio>#include<iostream>#原创 2016-10-16 22:55:51 · 839 阅读 · 0 评论 -
数据结构--哈弗曼编码器
哈夫曼编码本人比较懒….关于哈夫曼树知识点的介绍就不在博客上说了, 请同学们自行查阅相关资料, 直接上代码, 简单 ,粗暴. 如果有哪里没看明白或者是对程序有更好的见解, 请评论在博文的下方, 或者私信我, 我看到后会第一时间回复, 希望大家踊跃发言语言: C知识点: 哈夫曼编码问题描述: 问题描述:设计一个赫夫曼编码译码系统,对某个英文文本文件(.txt)中的字符进行哈夫曼编码,并将该txt文件生原创 2016-12-08 12:32:13 · 1988 阅读 · 3 评论 -
数据结构之---求最大字段和, 时间复杂度o(n)算法
问题描述采用动态规划策略设计并实现算法,求解最大子段和及最大子段和的起始下标和终止下标,要求算法的时间复杂性不超过O(n)。最大子段和问题给定由n个整数(可能为负整数)组成的序列a1, a2,…, an, 求该序列形如 的子段和的最大值。当所有整数均为负整数时定义其最大子段和为0。依次定义,所求的最优值为 例如当(a1,a2, a3, a4,a5,a6)= (-2,11,-4,13,-5,-2)时,原创 2016-12-17 20:33:47 · 3692 阅读 · 1 评论 -
数据结构---快速排序封装函数
下面的代码中的article只是我也的一个测试结构体, 可以换成任何数值, 理论上来说, 是通用的, 同学们可以自己用下面的代码, 封装一个属于自己的多态快排类void quickSort(article s[], int l, int r){ if (l < r) { int i = l, j = r; double x = s[l].perPea原创 2016-12-27 16:56:48 · 661 阅读 · 1 评论 -
C/C++广度优先搜索模拟迷宫求解问题
问题描述用一个字符类型的二维数组表示迷宫,数组中的每个元素表示一个小方格,‘0’代表通道,‘1’代表阻塞物。设计一个模拟小动物走迷宫的程序,为小动物寻找一条从迷宫入口到迷宫出口的通路。功能及界面要求:用户可以设置迷宫的行数或列数。随机产生迷宫的状态。用户设置小动物的入口下标和出口下标根据迷宫状态和入、出口位置直观显示出从入口到出口的通路或“不存在通路”的信息。代码重要的点已经注释了, 就不原创 2017-05-05 22:43:30 · 3384 阅读 · 0 评论 -
JavaScript数据结构--快速排序, 冒泡排序, 二分查找
快速排序主要思路: 不断拆分成两个数组, 小的放左边, 大的放右边.时间复杂度: O (nlogn) 数组有n个元素,因为要递归运算,算出支点pivot的位置,然后递归调用左半部分和有半部分,这个时候理解上是若第一层的话就是n/2,n/2,若是第二层就是n/4,n/4,n/4,n/4这四部分,即n个元素理解上是一共有几层2^x=n,x=logn,然后每层都是n的复杂度,那么平均就是O(...原创 2018-04-06 15:58:05 · 396 阅读 · 0 评论 -
javascript生成二叉树, 以及其前中后序遍历
序言最近看了些面试题, 发现大多数都会问一个问题就是JavaScript生成二叉树, 本来想偷懒百度看看算了, 可是发现好多网站博客的代码都是一样的, 并且生成的还是平衡二叉树………. 如果我不输入数字你给我生成一个试试. so, 看起来只能自己搞一下了.百度百科–平衡二叉树定义百度百科–二叉树定义我之前写过一篇基于C++的二叉树创建以及遍历方法, 本片博客算法就是基于之前的C++...原创 2018-08-08 16:33:58 · 1327 阅读 · 0 评论