第四章实践报告 实践报告任选一题进行分析。内容包括: 时间复杂度:sort()进行排序,时间复杂度为O(NlgN),循环累加比较,时间复杂度为O(N),总的时间复杂度为O(NlgN)。 空间复杂度:O(1) 收获,对于贪心算法又加深了一点点理解, ...
分类:
其他好文 时间:
2018-12-01 22:08:23
阅读次数:
152
1.实践题目 7-2 删数问题 2.问题描述 给定n位正整数a,去掉其中任意k≤n 个数字后,剩下的数字按原次序排列组成一个新的正整数。对于给定的n位正整数a和正整数 k,设计一个算法找出剩下数字组成的新数最小的删数方案。 输入格式:第 1 行是1 个正整数 a。第 2 行是正整数k。 输出格式:输 ...
分类:
编程语言 时间:
2018-12-01 20:20:28
阅读次数:
191
1.实践题目 第三题(程序存储问题 ) 2.问题描述 设有n 个程序{1,2,…, n }要存放在长度为L的磁带上。程序i存放在磁带上的长度是 li,1≤i≤n。 程序存储问题要求确定这n 个程序在磁带上的一个存储方案, 使得能够在磁带上存储尽可能多的程序。 对于给定的n个程序存放在磁带上的长度,计 ...
分类:
其他好文 时间:
2018-12-01 15:12:15
阅读次数:
138
题目传送门: "https://agc012.contest.atcoder.jp/tasks/agc012_c" 题目翻译 如果一个字符串是好的,那么这个字符串的前半部分和后半部分肯定一模一样。比如$aa$与$bubobubo$就是好的串,而空串,$a$与$abcabcabc$以及$abba$就不 ...
分类:
其他好文 时间:
2018-11-30 13:55:56
阅读次数:
209
一、实践题目: 数字三角形 二、问题描述 给定一个由 n行数字组成的数字三角形如下图所示。试设计一个算法,计算出从三角形 的顶至底的一条路径(每一步可沿左斜线向下或右斜线向下),使该路径经过的数字总和最大。三、算法描述: 从最后一行开始,由下往上依次找出最大数字总和的路径 四、算法时间及空间复杂度分 ...
分类:
编程语言 时间:
2018-11-28 01:07:30
阅读次数:
192
题目:删数问题 问题描述:输入一个正整数a和一个正整数k(k≤n ),在n位正整数a中去掉其中任意k个数字后,剩下的数字按原次序排列组成一个新 的正整数。 算法描述:从前往后进行比较,删掉升序的最后那个数,若一直保持升序,则删掉最后一位数,重复k次,删掉k个数 时间复杂度:该算法主要进行了k次的fo ...
分类:
编程语言 时间:
2018-11-27 21:08:08
阅读次数:
170
简单来说,时间复杂度指的是语句执行次数,空间复杂度指的是算法所占的存储空间。 一般情况下,随着n的增大,T(n)增长最慢的算法为最优算法。 1.对于简单的输入输出语句或赋值语句(无循环语句),近似认为需要 O(1)。一般来说,只要算法中不存在循环语句,其时间复杂度就是 O(1)。 2.对于顺序结构, ...
分类:
其他好文 时间:
2018-11-25 20:29:40
阅读次数:
209
算法(Algorithm)是指用来操作数据、解决程序问题的一组方法。对于同一个问题,使用不同的算法,也许最终得到的结果是一样的,但在过程中消耗的资源和时间却会有很大的区别。 那么我们应该如何去衡量不同算法之间的优劣呢? 主要还是从算法所占用的「时间」和「空间」两个维度去考量。 时间维度:是指执行当前 ...
分类:
编程语言 时间:
2018-11-21 12:17:14
阅读次数:
202
数据结构解决的问题:“快” + “省”,即为时间,空间复杂度分析 1:为什么需要复杂度分析? 因为通过统计手段分析的结果受到两个因素的影响,一:测试结果非常依赖测试环境,二:测试结果受数据规模的影响很大 2:大O复杂度表示法 所有代码的执行时间T(n)与每行代码的执行次数n成正比。 T(n) = O ...
分类:
编程语言 时间:
2018-11-17 19:09:34
阅读次数:
107
上面两种判断回文的方法在复杂度上没有区别,都是O(n)的时间复杂度和O(1)的空间复杂度。但是第二种从中间往两边判断的方法在解决一些问题时有独到之处。 ...
分类:
其他好文 时间:
2018-11-17 14:35:08
阅读次数:
140