数据结构
loglian
这个作者很懒,什么都没留下…
展开
-
算法设计与分析-第3章 动态规划
一、算法总思想动态规划算法与分治法类似,其基本思想也是将待求解问题分解成若干个子问题。但是经分解得到的子问题往往不是互相独立的。不同子问题的数目常常只有多项式量级。在用分治法求解时,有些子问题被重复计算了许多次。二、两个基本要素1)最优子结构性质:当一个问题的最优解包含了其子问题的最优解时,我们说这个问题具有最优子结构。2)重叠子结构性质:在问题的求解过程中,很多子问题的解会被多次使用。三、动态规划的设计步骤1)找出最优解的性质,并刻画其结构特征2)递归地定义最优值原创 2020-10-14 22:06:44 · 521 阅读 · 1 评论 -
数据结构题目集-二分查找
本题要求实现二分查找算法。函数接口定义:Position BinarySearch( List L, ElementType X );其中List结构定义如下:typedef int Position;typedef struct LNode *List;struct LNode { ElementType Data[MAXSIZE]; Position Last; /* 保存线性表中最后一个元素的位置 */};L是用户传入的一个线性表,其中ElementT原创 2020-10-10 17:30:09 · 201 阅读 · 0 评论 -
数据结构复习
一、线性表(List):由零个或多个数据元素组成的有限序列。1.序列:有先来后到2.第一个无前驱,最后一个无后继。其他元素有且只有一个前驱和后继。3.有限的4.一对一的关系抽象数据类型(ADT):指一组性质相同的值的集合及定义在此集合上的一些操作和总称。线性表的顺序存储结构:用一段地址连续的存储单元依次存储线性表的数据元素;具有随机存储结构的特点在存、读数据时,不管哪个位置时间复杂度都是O(1),插入删除时则为O(n)优点:无需为表中元素之间的逻辑关系而增加...原创 2020-09-28 11:32:34 · 93 阅读 · 0 评论 -
数据结构-逆转链表
下列代码的功能是返回带头结点的单链表L的逆转链表。List Reverse( List L ){ Position Old_head, New_head, Temp; New_head = NULL; Old_head = L->Next; while ( Old_head ) { Temp = Old_head->Next; old_head->next=new_head; //空1 N原创 2020-06-08 12:39:25 · 2384 阅读 · 0 评论