摘要: 第五章 回溯算法 1. 你对回溯算法的理解 回溯算法,类似于上学期在数据结构中接触到的DFS(深度优先搜索),基本思路就是类比为一棵树分解成多种可能实现的路,并从根结点逐条遍历解空间树,若未找到解则倒回前一个结点,直到搜索到问题的一个解即可结束。 经典算法问题:(1)0-1背包问题 (2)旅行售货员 阅读全文
posted @ 2020-12-17 23:58 软件工程1902贺依 阅读(82) 评论(0) 推荐(0) 编辑
摘要: 第四章 贪心算法 1.对贪心算法的理解: 在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,它所做出的仅是在某种意义上的局部最优解。是一种不同于动态规划(自底向上)的、、依赖于以往的选择自顶向下的算法,以迭代方式做出相继的贪心选择,选择后不断简化成规模更小的子问题。但 阅读全文
posted @ 2020-11-14 01:15 软件工程1902贺依 阅读(68) 评论(0) 推荐(0) 编辑
摘要: 一、作业题:挖地雷 在一个地图上有n个地窖(n≤200),每个地窖中埋有一定数量的地雷。同时,给出地窖之间的连接路径,并规定路径都是单向的,且保证都是小序号地窖指向大序号地窖,也不存在可以从一个地窖出发经过若干地窖后又回到原来地窖的路径。某人可以从任意一处开始挖地雷,然后沿着指出的连接往下挖(仅能选 阅读全文
posted @ 2020-10-31 00:54 软件工程1902贺依 阅读(137) 评论(0) 推荐(0) 编辑
摘要: △实践题目: 2-1 找第k小的数 (25分) △问题描述: 设计一个平均时间为O(n)的算法,在n(1<=n<=1000)个无序的整数中找出第k小的数。 提示:函数int partition(int a[],int left,int right)的功能是根据a[left]~a[right]中的某个 阅读全文
posted @ 2020-10-07 23:25 软件工程1902贺依 阅读(107) 评论(0) 推荐(0) 编辑
摘要: 一、谈谈对分治法思想的体会 分治法的基本思想:将一个规模为n的问题分解为k个规模较小的子问题,这些子问题互相独立且与原问题相同。递归解决这些子问题,然后将各子问题的解合并得到原问题的解。 例如:二分搜索法,大整数的乘法,棋盘覆盖问题,合并排序,快速排序等。 体会:当我们在处理一些大规模计算或排序的问 阅读全文
posted @ 2020-10-03 18:44 软件工程1902贺依 阅读(76) 评论(0) 推荐(0) 编辑
摘要: 第八章 排序 一、内容小结 1.排序:按关键字的非递减或非递增顺序对一组记录重新进行排列的操作。 2.内部排序和外部排序: 前者指的是待排序记录全部存放在计算机内存中进行排序的过程; 后者指的是待排序记录的数量很大,以致内存一次不能容纳全部记录,在排序过程中尚需对外存进行访问的排序过程。 3.内存排 阅读全文
posted @ 2020-07-11 22:54 软件工程1902贺依 阅读(249) 评论(0) 推荐(0) 编辑
摘要: 第7章 查找 一、内容小结 (1)基本概念: ①查找表:是由同一类型的数据元素(或记录)构成的集合 (eg.线性表、树表、散列表); ②关键字:是数据元素(或记录)中某个数据项的值--》作为一种"标识"; ③查找:根据给定的值,在查找表中确定一个其关键字等于给定值得记录或数据元素; 查找成功即返回该 阅读全文
posted @ 2020-06-26 22:47 软件工程1902贺依 阅读(215) 评论(0) 推荐(0) 编辑
摘要: 第六章 图 一、内容小结 p.s.在数据结构之前,在离散数学课上也接触了图,当时接触的不深,但在DS课上加深了对图的应用的了解。 1.图的基本术语 ①子图:相当于图是集合的话,子图就相当于是它的子集。其中有向图的也可以是无向图的子图。 ②无向完全图:具有n(n-1)/2条边的无向图。有向完全图就是具 阅读全文
posted @ 2020-06-10 16:24 软件工程1902贺依 阅读(210) 评论(1) 推荐(0) 编辑
摘要: 第五章——树和二叉树(Tree) 一、内容小括 1.树是一种“一对多”的非线性结构,而且有且仅有一个根结点。以及根的子树(SubTree)分为左子树和右子树。同时树也包括“空树”或只有根结点的树。 2.树的常用结构术语: ①结点:树中的一个独立单元; ②结点的度:结点所拥有的子树数。 ③树的度:取树 阅读全文
posted @ 2020-05-25 21:00 软件工程1902贺依 阅读(204) 评论(0) 推荐(0) 编辑
摘要: 第四章 串 数组 广义表一.本章内容小结(1)串(字符串) 1.线性表通常以“单个元素”为操作对象(查找,插入,删除等),而串通常以“串的整体”为操作对象(插入删除子串等)。 2.串分为顺序存储结构和链式存储结构,其中链式存储结构代码为: #define CHUNKSIZE 80 //定义的块大小 阅读全文
posted @ 2020-05-04 17:29 软件工程1902贺依 阅读(126) 评论(0) 推荐(0) 编辑