摘要:
一、题目 给定一个字符串 s ,根据字符出现的 频率 对其进行 降序排序 。一个字符出现的 频率 是它出现在字符串中的次数。 返回 已排序的字符串 。如果有多个答案,返回其中任何一个。 输入: s = "tree" 输出: "eert" 解释: 'e'出现两次,'r'和't'都只出现一次。 因此'e 阅读全文
摘要:
一、题目 二、解法 本题是二分法的变种。和标准二分问题的不同在于,二分后,两个区间不都是有序的,但必有一个有序,另一个可能有序也可能无序。 class Solution { public int search(int[] nums, int target) { int len=nums.length 阅读全文
摘要:
输入:nums1 = [4,1,2], nums2 = [1,3,4,2]. 输出:[-1,3,-1] 解释:nums1 中每个值的下一个更大元素如下所述: - 4 ,用加粗斜体标识,nums2 = [1,3,4,2]。不存在下一个更大元素,所以答案是 -1 。 - 1 ,用加粗斜体标识,nums2 阅读全文
摘要:
lab7 tiny shell笔记 主要任务是在tsh.h中实现一个简单功能的shell(支持job)。有16个测试,是make test01至make test16,依次测试trace01.txt至trace16.txt中的内容。 测试的流程 输入make test01,会调用sdriver.pl 阅读全文
摘要:
lab5 Y86-64 Assembler笔记 本lab需要编写汇编器(assembler),将Y86-64的汇编代码转换为二进制代码。代码文件:y64sam.c 头文件重要数据结构 /* Table used to encode information about instructions */ 阅读全文
摘要:
lab6 piplined processor笔记 part A 主要是写汇编代码。比较简单,略过 part B 比较简单,略过 part C 修改pipe-full.hcl和ncopy.ys,保证程序正确性的同时,使得程序运行越快越好。 要求: pipe-full.hcl:实现iaddq指令 nc 阅读全文
摘要:
class Solution { public int maxProfit(int[] prices) { int len=prices.length; // 0: no stock; 1: hold stock; 2: no stock & in frozen stage int[] dp=new 阅读全文
摘要:
本质和买卖股票的最佳时机3一样。 class Solution { public int maxProfit(int k, int[] prices) { int len=prices.length; if(len==0||k==0) return 0; int k2=k*2; int[] dp=n 阅读全文
摘要:
dp[0]: 第i天已经完成1次买入的最大利润 dp[1]: 第i天已经完成1次买出的最大利润 dp[2]: 第i天已经完成2次买入的最大利润 dp[3]: 第i天已经完成2次买出的最大利润 class Solution { public int maxProfit(int[] prices) { 阅读全文
摘要:
不能简单用层次遍历把隔行的加起来,因为考虑单链表2->1->3->4,最大是2+4=6 f(node)表示占用node的最大值。g(node)表示不占用node的最大值。则: f(node)=node.val+g(node.left)+g(node.right) g(node)=max(f(node 阅读全文