随笔分类 - 数据结构与算法
摘要:题目地址:https://leetcode.com/problems/binary-tree-preorder-traversal/description/Given a binary tree, return the preorder traversal of it...
阅读全文
摘要:题目地址:https://leetcode.com/problems/subtree-of-another-tree/description/Given two non-empty binary trees s and t, check whether tree t ...
阅读全文
摘要:题目地址:https://leetcode.com/problems/arranging-coins/description/You have a total of n coins that you want to form in a staircase shape,...
阅读全文
摘要:给出一个表达式s,此表达式包括数字,字母以及方括号,在方括号前面的数字表示方括号里面的内容重复的次数(括号内的内容可以是字符串或另一个表达式),请编写程序将这个表达式展开成一个字符串。输入样例:(每一行输入一个表达式)abc3[a]3[abc]4[ac...
阅读全文
摘要:小和问题在一个数组中, 每一个数左边比当前数小的数累加起来, 叫做这个数组的小和。 求一个数组的小和。例子:[1,3,4,2,5]1左边比1小的数, 没有;3左边比3小的数, 1;4左边比4小的数, 1、 3;2左边比2小的数, 1;5左边比5小的数, 1、 3、 4...
阅读全文
摘要:一个递归行为的例子master公式的使用T(N) = a*T(N/b) + O(N^d)T(N)是样本量为N时的时间复杂度,N/b是划分成子问题的样本量,子问题发生了a次,后面O(N^d)是除去调用子过程之外的时间复杂度。比如要求一个数组的最大值: public...
阅读全文
摘要:选几种典型的加以说明import java.io.BufferedInputStream;import java.util.Scanner;public class test { // 不返回串 public static void reversePrin...
阅读全文
摘要:题目:如果字符串s中的字符循环移动任意位置之后能够得到另一个字符串t,那么s就被称为t的回环变位。例如,ACTGACG就是TGACGAC的一个回环变位,反之亦然。判定这个条件在基因组序列的研究中是很重要的。编写一个程序检查两个给定的字符串s和t是否为回环变位。上代码:...
阅读全文
摘要:有n个重量和价值分别为wi,vi的物品。从这些物品中挑选出总重量不超过W的物品,求所有挑选方案中价值总和的最大值。限制条件:1≤n≤1001≤wi,vi≤1001≤W≤10000例如输入:n = 4W=52 3 (分别为w,v)1 23 42 ...
阅读全文
摘要:什么是不重复的字符串全排列,如果是普通字符串全排列,那么输入:acc输出:accacccacccaccacac要求写出的去重的,也就是会输出:acccaccca上代码进行比较吧import java.io.BufferedInputStream;import java...
阅读全文
摘要:题目:打印一个字符串的全部排列 比如:import java.io.BufferedInputStream;import java.util.Scanner;public class test { public static void arrange(char[...
阅读全文
摘要:打印一个字符串的全部子序列, 包括空字符串输入:abc输出: // 第一个是空串cbbcaacababcimport java.io.BufferedInputStream;import java.util.Scanner;public class test {...
阅读全文
摘要:关于区间问题还有我的另一篇博客https://blog.csdn.net/qq_34115899/article/details/79388870题目: 一些项目要占用一个会议室宣讲,会议室不能同时容纳两个项目的宣讲。给你每一个项目开始的时间和结束的时间(...
阅读全文
摘要:大意是这样:有k个项目,你的本金是W,然后每次只能串行做一个项目,不能并行,输入每个项目需要的本金以及做完后获得的利润,每做完一个项目,马上获得的收益,可以支持你去做下一个项目,求最后获得的最大收益。比如输入:k=4 // 4个项目W=20 // 本金2...
阅读全文
摘要:这里用到的是哈夫曼编码原理,关于这个知识点的讲解可以看这位博主的,我觉得写的很好点击打开链接 一块金条切成两半,是需要花费和长度数值一样的铜板的。比如长度为20的金条,不管切成长度多大的两半,都要花费20个铜板。一群人想整分整块金条,怎么分最省铜板?例如,...
阅读全文
摘要:关于图的搜索问题可以看我的另一篇博客二分图的判定点击打开链接L2-023. 图着色问题时间限制300 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者陈越图着色问题是一个著名的NP完全问题。给定无向图 G = (V, E),问可否用K种...
阅读全文
摘要:二分图判定 给定一个具有n个顶点的图。要给图上每个顶点染色,并且要使相邻的顶点颜色不同。问是否能最多用2种颜色进行染色?题目保...
阅读全文
摘要:算法训练 未名湖边的烦恼 时间限制:1.0s 内存限制:256.0MB 问题描述 每年冬天,北大未名湖上都是滑冰的好地方。北大体育组准备了许多冰鞋,可是人太多了,每天下午收工后,常常一双冰鞋都不剩。 每天早上,租鞋窗口都会排起长龙,假设有还鞋的m个,有...
阅读全文
摘要:很普通的深搜,就是最后一个测试点需要注意一下,就是所有的钱加起来也满足不了需要付的钱,这样就不用深搜了,不然超时。首先一看时限200ms,就不用尝试java了,十有八九要超时。#includeusing namespace std;int arr[10001]...
阅读全文
摘要:假设是1000个结点以内,输入前序 4 1 3 2 6 5 7 中序 1 2 3 4 5 6 7 得到后续 2 3 1 5 7 6 4关于已知中序后序遍历求先序遍历的代码可以看我的另一篇博客点击打开链接import java.io.BufferedI...
阅读全文
浙公网安备 33010602011771号