
数据结构与算法
文章平均质量分 89
胡胜同学
游戏开发
展开
-
数据结构(五)---图:
数据结构(五)---图:①图的定义图是由顶点集合(Vertex)及顶点间的关系集合组成的一种数据结构。②图的操作图的一些常用操作:创建图、销毁图、清空图、加入边、删除边、获取权、获取结点的度、获取图的结点数、获取图的边数。③图的存储结构1、邻接矩阵法:基本思想:用一维数组存储顶点 – 描述顶点相关的数据。用二维数组存储边 – 描述原创 2015-07-07 10:11:42 · 798 阅读 · 0 评论 -
数据结构(四)---树:
数据结构(四)---树:①树的定义:树是一种非线性的数据结构:树是由n(n≥0)个结点组成的有限集合,如果n = 0,称为空树。如果n> 0,则:有一个特定的称之为根(root)的结点,它只有直接后继,但没有直接前驱。除根以外的其它结点划分为m(m≥0)0)个互不相交的有限集合T0,T1,…,Tm-1,每个集合又是一棵树,并且称之为根的子树(subTree)。树原创 2015-06-13 22:42:29 · 746 阅读 · 0 评论 -
数据结构(二)---栈:
数据结构(一)---栈:①栈的定义及实现:栈是一种特殊的线性表、栈仅能在线性表的一端进行操作栈顶(Top):允许操作的一端栈底(Bottom):不允许操作的一端②栈的性质:性质:后进先出(LIFO)③栈的操作:栈的一些常用操作:创建栈、销毁栈、清空栈、进栈、出栈、获取栈顶元素、获取栈的大小栈是一种特殊的线性表栈只允许在线性原创 2015-06-10 14:45:11 · 1046 阅读 · 0 评论 -
数据结构(一)---链表:
数据结构(一)---链表:①线性表的本质:线性表的定义:线性表(List)是零个或多个数据元素的集合、线性表中的数据元素之间是有顺序的、线性表中的数据元素个数是有限的、线性表中的数据元素的类型必须相同②线性表的相关操作:线性表的一些常用操作:创建线性表、销毁线性表、清空线性表、将元素插入线性表、将元素从线性表中删除、获取线性表中某个位置的元素、获取线性表的长度原创 2015-06-09 18:23:00 · 1156 阅读 · 0 评论 -
数据结构(三)---队列:
数据结构(三)---队列:①队列的定义及实现:队列是一种特殊的线性表、队列仅在线性表的两端进行操作队头(Front):取出数据元素的一端队尾(Rear):插入数据元素的一端队列不允许在中间部位进行操作性质:先进先出(FIFO)队列的一些常用操作:创建队列、销毁队列、清空队列、进队列、出队列、获取队头元素、获取队列的长度Queue.转载 2015-06-12 23:31:02 · 651 阅读 · 0 评论 -
常用算法:分治算法、动态规划算法、贪心算法、回溯法、分支限界法
常用算法:分治算法、动态规划算法、贪心算法、回溯法、分支限界法分治算法一、基本概念 在计算机科学中,分治法是一种很重要的算法。字面上的解释是“分而治之”,就是把一个复杂的问题分成两个或更多的相同或相似的子问题,再把子问题分成更小的子问题……直到最后子问题可以简单的直接求解,原问题的解即子问题的解的合并。这个技巧是很多高效算法的基础,如排序算法(快速排序,归并排序),傅立叶变换(转载 2015-10-24 03:25:40 · 4397 阅读 · 0 评论 -
常见算法之排序
常见算法之排序排序的定义:输入:n个数:a1,a2,a3,...,an输出:n个数的排列:a1',a2',a3',...,an',使得a1'In-place sort(不占用额外内存或占用常数的内存):插入排序、选择排序、冒泡排序、堆排序、快速排序。Out-place sort(内存和外存结合使用):归并排序、计数排序、基数排序、桶排序。①插入排序(直接插入原创 2015-07-07 18:49:16 · 1284 阅读 · 0 评论