
数据结构与算法
文章平均质量分 84
学习数据结构与算法时候的笔记
cj5785
知其然,更要知其所以然
展开
-
数据结构与算法-排序
排序是计算机内经常进行的一种操作,其目的是将一组无序的数据元素调整为有序的数据元素排序的概念排序数学定义:假设含n个数据元素的序列为{ R1, R2, ···, Rn}其相应的关键字序列为{ K1, K2, ···, Kn}这些关键字相互之间可以进行比较,即在它们之间存在着这样一个关系 :Kp1 ≤ Kp2 ≤ ··· ≤ Kpn按此固有关系将上式记录序列重新排列为{ Rp1, Rp2, ...原创 2019-04-04 22:38:49 · 1436 阅读 · 0 评论 -
数据结构与算法-树
树是一种非线性结构,有一个前驱,可能有多个后继(1:n)的数据结构树的基本知识树的定义由一个或多个(n≥0)结点组成的有限集合T,有且仅有一个结点称为根(root),当n>1时,其余的结点分为m(m≥0)个互不相交的有限集合T1,T2,···,Tm。每个集合本身又是棵树,被称作这个根的子树若干术语根:即根结点(没有前驱)叶子:即终端结点(没有后继)森林:指m棵不相交的树的集...原创 2019-04-04 22:33:02 · 1248 阅读 · 0 评论 -
数据结构与算法-queue
队列和stack类似,stack是先进后出,而queue的先进先出,也是一种特殊的线性表基本概念概念队列是一种特殊的线性表队列仅在线性表的两端进行操作队头(Front):取出数据元素的一端队尾(Rear):插入数据元素的一端队列不允许在中间部位进行操作常用操作销毁队列清空队列进队列出队列获取队头元素获取队列的长度#ifndef _MY_QUEUE_H_#def...原创 2019-04-04 22:29:31 · 1270 阅读 · 0 评论 -
数据结构与算法-stack
栈的本质是一种线性表,特殊的一种线性表基本概念概念栈是一种特殊的线性表栈仅能在线性表的一端进行操作栈顶(Top):允许操作的一端栈底(Bottom):不允许操作的一端stack是一种线性表,具有线性关系,即前驱后继关系,由于其比较特殊,增加和删除元素只能在栈顶进行栈的插入操作叫做进栈,也称压栈,入栈栈的删除操作叫做出栈,也称弹栈常用操作创建栈销毁栈清空栈进栈出栈...原创 2019-04-04 22:28:04 · 1260 阅读 · 0 评论 -
数据结构与算法-线性表
线性表作为一种常用的数据结构,在实际中有着广泛的运用。线性表基本概念线性表定义线性表(List)是零个或多个数据元素的集合线性表中的数据元素之间是有顺序的线性表中的数据元素个数是有限的线性表中的数据元素的类型必须相同数学定义线性表是具有相同类型的 n( ≥ 0)个数据元素的有限序列(a1, a2,···, an)ai是表项,n 是表长度性质a0为线性表的第一个元素,只有...原创 2019-04-04 22:24:35 · 1250 阅读 · 0 评论 -
数据结构与算法-概念
计算机从解决数值计算问题到解决生活中的问题现实生活中的问题涉及不同个体间的复杂联系需要在计算机程序中描述生活中个体间的联系数据结构主要研究非数值计算程序问题中的操作对象以及它们之间的关系而不是研究复杂的算法数据结构基本概念数据:程序的操作对象,用于描述客观事物数据的特点:-可以输入到计算机-可以被计算机程序处理数据是一个抽象的概念,将其进行分类后得到程序设计语言中的类型。如:i...原创 2019-04-04 22:17:08 · 1447 阅读 · 0 评论