-
第三章作业
1. 单调递增最长子序列 #include<iostream>using namespace std; int DL(int a[], int b[],int n) { for (int i = 1; i < n; i++) { for (int j = 0; j < i; j++) { if (a -
算法第三章作业
1.挖地雷 在一个地图上有n个地窖(n≤200),每个地窖中埋有一定数量的地雷。同时,给出地窖之间的连接路径,并规定路径都是单向的,且保证都是小序号地窖指向大序号地窖,也不存在可以从一个地窖出发经过若干地窖后又回到原来地窖的路径。某人可以从任意一处开始挖地雷,然后沿着指出的连接往下挖(仅能选择一条路 -
第三章作业
3-2 单调递增最长子序列 (25分) 设计一个O(n2)时间的算法,找出由n个数组成的序列的最长单调递增子序列。 输入格式: 输入有两行: 第一行:n,代表要输入的数列的个数 第二行:n个数,数字之间用空格格开 输出格式: 最长单调递增子序列的长度 输入样例: 在这里给出一组输入。例如: 5 1 -
算法第三章作业
单调递增最长子序列 (25分) 设计一个O(n2)时间的算法,找出由n个数组成的序列的最长单调递增子序列。 输入格式: 输入有两行: 第一行:n,代表要输入的数列的个数 第二行:n个数,数字之间用空格格开 输出格式: 最长单调递增子序列的长度 输入样例: 在这里给出一组输入。例如: 5 1 3 5 -
第三章单调递增最长子序列
1. 7-1 单调递增最长子序列设计一个O(n2)时间的算法,找出由n个数组成的序列的最长单调递增子序列。输入格式: 输入有两行: 第一行:n,代表要输入的数列的个数 第二行:n个数,数字之间用空格格开输出格式: 最长单调递增子序列的长度输入样例: 在这里给出一组输入。例如:51 3 5 2 9输出 -
算法第三章作业
算法第三章作业 20191002912李乾明 1、3-2 单调递增最长子序列 设计一个O(n2)时间的算法,找出由n个数组成的序列的最长单调递增子序列。 输入格式: 输入有两行: 第一行:n,代表要输入的数列的个数 第二行:n个数,数字之间用空格格开 输出格式: 最长单调递增子序列的长度 输入样例: -
算法第三章作业
1.单调递增最长子序列 1.1 递归方程式 a[n]:表示第n个数字 b[n]:表示以第n个数字为结尾的最长子序列 递归方程式 :b[j] = m(i,j) = b[i] + 1 , a[j] > a[i] b[j] , a[j] <= a[i] 1 , j==1 1.2 表的维度是1维,即b[n] -
第三章作业
1. 第三章作业题“单调递增最长子序列”分析 1.1 根据最优子结构性质,列出递归方程式 dp[i]=max(dp[j],dp[i]-1)+1; 1.2 给出填表法中表的维度、填表范围和填表顺序。 表的维度:一维,b[i]记录a[0]到a[i]的单调递增最长子序列。 填表范围:从0到n。 填表顺序: -
算法第三章作业
一、题目:3-1 调递增最长子序列 1.1、递归方程式 a= max{maxnum,b[i]} (0 <= j < i || a[i] > a[j]) ; 其中maxnum表示到当前位置的前一个位置的最大值,b[i]表示到当前的最大值。 1.2、表的维度:一维表 范围:0-n 顺序:自左向右 1.3 -
算法第三章作业
1.单调递增最长子序列 1.1 根据最优子结构性质,列出递归方程式, dp[i]=max(dp[j]+1,dp[i]) (a[i]>a[j]) 1.2 给出填表法中表的维度、填表范围和填表顺序。 一维数组表,填表范围: 0 < n , 填表顺序:从左向右依次填写 1.3 分析该算法的时间和空间复杂度