#Etc

leetcode 146. LRU Cache 、460. LFU Cache

LRU算法是首先淘汰最长时间未被使用的页面,而LFU是先淘汰一定时间内被访问次数最少的页面,如果存在使用频度相同的多个项目,则移除最近最少使用(LeastRecentlyUsed)的项目。LFU在频度相同的时候与LRU类似。  146.LRUCache 1.stl中list是双向链表,sl...

leetcode 76. Minimum Window Substring

用unordered_map存储t中的字符和存储的次数,l是字符串最左边的字符的位置,r是字符串最右边字符的位置,count是s中从l到r这一区间成功匹配t中字符个数。当count的个数跟t的大小一样大(也就是成功匹配),就将当前子串的size和min_size比较以更新min_size,会出现一种情况,l位置的字符并...

leetcode 4. Median of Two Sorted Arrays

将找两个排序数组的中间值转换为找两个数组的第k小的数,findKthNumber是在两个数组中找第k小的数。每次找k/2个数,如果一个数组最末尾那个小于另一个,那这个数组的前面部分肯定属于整个k/2里面。start2+mid+1每次加了1,说明start1、start2都是新的数,属于当前的k的数,所以mid要用k/2...

leetcode 148. Sort List

https://leetcode.com/problems/sort-list/discuss/46714/Java-merge-sort-solution链表初始化代码:ListNode*origin=newListNode(0);此题要求时间复杂度是o(nlogn),空间复杂度是o(1),快排最高时间复杂度可能到达...
代码星球 ·2020-10-13

leetcode 39. Combination Sum 、40. Combination Sum II 、216. Combination Sum III 、377. Combination Sum IV

CombinationSum:所有数都正数,原始数组中没有重复的数字,生成的子数组中可以重复使用某一个数值CombinationSumII: 所有数都正数,原始数组中有重复的数字,生成的子数组中不能重复使用某一个数值CombinationSumIII: 所有数都正数且只能是1到9之间的数,原始数组中...

leetcode 141. Linked List Cycle 、 142. Linked List Cycle II

判断链表有环,环的入口结点,环的长度1.判断有环:快慢指针,一个移动一次,一个移动两次2.环的入口结点:相遇的结点不一定是入口节点,所以y表示入口节点到相遇节点的距离n是环的个数w+n+y=2(w+y)  经过化简,我们可以得到:w =n-y;https://www.cnblogs.com/zhuzhenwe...

leetcode 226. Invert Binary Tree

 classSolution{public:TreeNode*invertTree(TreeNode*root){if(root==NULL)returnNULL;TreeNode*tmp=invertTree(root->left);root->left=invertTree(root->...

leetcode 347. Top K Frequent Elements

用优先队列排序,优先队列是大根堆 classSolution{public:vector<int>topKFrequent(vector<int>&nums,intk){vector<int>result;intlength=nums.size();if(lengt...

leetcode 3. Longest Substring Without Repeating Characters

用unordered_map存储字符和字符对应的索引。left是上一个重复字符的位置索引,初始为-1,因为最开始没有重复字符,如果初始为0,就表示第0个位置重复了,显然不符合题意。同时你也可以用i-left计算发现,如果前面没有重复,你的left初始化为0,计算就少1了。注意:if判断中要m[s[i]]>left...

leetcode 461. Hamming Distance

  classSolution{public:inthammingDistance(intx,inty){intres=x^y;intcount=0;intm;while(res){m=res&(res-1);count++;res=m;}returncount;}}; ...

leetcode 19. Remove Nth Node From End of List

 这个题和剑指上的倒数第k个结点略微有点不一样,找到倒数第k个只需要移动n-1次,但删除倒数第k个需要移动n次,因为需要找到倒数第k个后面那个还有如果k值大于等于了长度,返回的是head的next注意p2->next=p2->next->nextclassSolution{public:Li...

leetcode 100. Same Tree、101. Symmetric Tree

 100.SameTreeclassSolution{public:boolisSameTree(TreeNode*p,TreeNode*q){if(p==NULL&&q==NULL)returntrue;elseif(p==NULL||q==NULL)returnfalse;if(p->...

leetcode 171. Excel Sheet Column Number

这个题其实是做26进制转换这个地方记得减大A,不是小aclassSolution{public:inttitleToNumber(strings){intlength=s.size();if(length<=0)return0;intnum=0;for(inti=0;i<length;i++){num=nu...

leetcode 242. Valid Anagram

这个题只存储26个字母的,之前用的256个字符,所以可以直接用s[i]这种作为坐标,但现在只存储在26个中,坐标值是0到25,必须减去'a'才行,不减的话可能是100多的assic码classSolution{public:boolisAnagram(strings,stringt){intlength1=s.size...
代码星球 ·2020-10-13

leetcode 326. Power of Three

比较通用的方法: classSolution{public:boolisPowerOfThree(intn){if(n<=0)returnfalse;doubleres=log10(n)/log10(3);return(res-int(res)==0)?true:false;}};https://www...
首页上一页...3132333435...下一页尾页