数据结构
JoliceYU
技术小白 一步一个脚印 不断努力不断学习
展开
-
最大子列和问题的四种不同时间复杂度的算法实现
最近在学习计算机专业课,数据结构课程。在中国大学MOOC网上选修了浙大的《数据结构》课程。最近课程讲到了最大子序列和的问题,结合课程内容、网上的资料借鉴和自己的理解,将解决这个问题的四种不同的算法进行实现和总结。问题描述:主函数代码如下:#include#includeusing namespace std;#define NUM_SUM 10int A[NUM_SUM]原创 2017-03-07 10:50:33 · 1438 阅读 · 0 评论 -
数据结构学习之队列的链式存储的C++实现
最近在中国大学MOOC上选修了浙大的《数据结构》这门课,这周学习了线性表、堆栈和队列这三种抽象数据类型。下面就队列这种抽象数据类型的链式存储进行总结并贴出代码和注释。一、队列的抽象数据类型描述任何一种抽象数据类型的描述主要分为数据对象集和操作集两部分。1、数据对象集:一个有0个或者多个元素的有穷线性表。(队列本质上也是一种线性表)2、操作集:(1)创建空队列并初始化 (2)原创 2017-03-13 22:19:24 · 661 阅读 · 0 评论 -
数据结构学习—“一般树”的基本概念和知识
最近在中国大学MOOC上选修了浙大的《数据结构》这门课,这周温习了下之前学的一些涉及到“树”的基本知识。下面就“一般的树”这种抽象数据类型的存储进行总结。一、“树”提出的背景和意义:1.树的意义:与之前的数据结构相比,树这种数据结构的提出意义在于:分层次组织数据,这样在数据的管理上会更有效率,主要在于数据的查找。2.数据查找的定义:根据某个关键字K从数据集合中找出与关键字K相同的记录。原创 2017-06-20 20:09:57 · 2501 阅读 · 0 评论 -
数据结构学习之-二叉树的定义和存储实现
最近在中国大学mooc上学习了数据结构课程,这周温习了二叉树相关的知识,现在将和二叉树相关的定义、抽象数据结构、性质以及C++实现基本的操作进行总结。一、二叉树的抽象数据类型描述任何一种抽象数据类型的描述分为数据对象集和操作集两部分。1、数据对象集:一种特殊的树,即是有穷的节点集合,非空时,由根节点和左右二叉子树组成,每个节点的度最大为2。2、操作集: (1)判别二叉树树是否为空;原创 2017-06-20 20:55:27 · 761 阅读 · 0 评论 -
数据结构学习之-二叉树的三种递归遍历C++实现及相关应用
最近在中国大学mooc上学习了数据结构课程,这周温习了二叉树相关的知识,现在将和二叉树三种遍历方法的原理以及C++实现基本的操作进行总结。二叉树的元素遍历主要有3种方式:前序遍历(根左右),中序遍历(左根右),后序遍历(左右根),三种遍历方式的主要区别在于访问根节点的顺序不一样。BinTree.h头文件实现:#ifndef _BINTREE_H#define _BINTREE_H#in原创 2017-07-11 09:51:19 · 568 阅读 · 0 评论 -
快速排序
快速排序在很多地方都有很大的用处,最近在刷题的时候,经常遇到快排的代码,在此记录下:#include<iostream>#include<vector>using namespace std;//给定一个系列的起始,随机选择一个值,小于这个值调到左边,大于的调到右边int Partition(vector<int>& array, in...原创 2018-03-04 11:33:44 · 155 阅读 · 0 评论