随笔分类 -  【2022刷题】

摘要:class Solution { public: int flag=1,midP; bool isPalindrome(ListNode* head) { ListNode * l1 = head,*l2; ListNode * mid = findMid(head); l2=mid->next; 阅读全文
posted @ 2022-02-23 00:38 Jerry2km1 阅读(40) 评论(0) 推荐(0)
摘要:class Solution { public: void reorderList(ListNode* head) { if(head==nullptr){ return; } ListNode* mid = findMiddle(head); ListNode* l1=head; ListNode 阅读全文
posted @ 2022-02-23 00:29 Jerry2km1 阅读(44) 评论(0) 推荐(0)
摘要:class Solution { public: ListNode* addTwoNumbers(ListNode* l1, ListNode* l2) { ListNode * ans = new ListNode,*pre=nullptr,*temp; stack<int> s1,s2; int 阅读全文
posted @ 2022-02-23 00:19 Jerry2km1 阅读(32) 评论(0) 推荐(0)
摘要:/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode() : val(0), next(nullptr) {} * ListNode(int x) : 阅读全文
posted @ 2022-02-23 00:13 Jerry2km1 阅读(39) 评论(0) 推荐(0)
摘要:class Solution { public: ListNode *getIntersectionNode(ListNode *headA, ListNode *headB) { ListNode *pA=headA,*pB=headB; int la=0,lb=0,temp; while(pA) 阅读全文
posted @ 2022-02-22 17:08 Jerry2km1 阅读(54) 评论(0) 推荐(0)
摘要:class Solution { public: ListNode *detectCycle(ListNode *head) { unordered_set<ListNode*> ptt; ListNode * dummy = head; while(dummy!=NULL){ if(ptt.cou 阅读全文
posted @ 2022-02-22 17:03 Jerry2km1 阅读(41) 评论(0) 推荐(0)
摘要:class Solution { public: ListNode* removeNthFromEnd(ListNode* head, int n) { ListNode *dummy=new ListNode(0); ListNode *front=head,*target=dummy; dumm 阅读全文
posted @ 2022-02-22 16:57 Jerry2km1 阅读(38) 评论(0) 推荐(0)
摘要:【题目描述】 给你一个字符串 s ,请你统计并返回这个字符串中 回文子串 的数目。 回文字符串 是正着读和倒过来读一样的字符串。 子字符串 是字符串中的由连续字符组成的一个序列。 具有不同开始位置或结束位置的子串,即使是由相同的字符组成,也会被视作不同的子串。 【思路】 计算有多少个回文子串的最朴素 阅读全文
posted @ 2022-02-05 21:09 Jerry2km1 阅读(99) 评论(0) 推荐(0)
摘要:【题目描述】 给定一个非空字符串 s,最多删除一个字符。判断是否能成为回文字符串。 【思路】 分四种情况:1.本身是回文;2.删掉左边不相同的字符是回文,此时跳过左边字符,即l=l+2;3.删掉右边第一个不相同的字符是回文,此时跳过右边字符,即r=r-2;4.本身不是回文所以给前三种情况都给一个fl 阅读全文
posted @ 2022-02-05 21:03 Jerry2km1 阅读(80) 评论(0) 推荐(0)
摘要:class Solution { public: bool isPalindrome(string s) { int l=0,r=s.size()-1; int p='a'-'A'; int flag=1; while(l<=r) { while(1) { if(s[l]>='A'&&s[l]<=' 阅读全文
posted @ 2022-02-05 21:00 Jerry2km1 阅读(47) 评论(0) 推荐(0)
摘要:class Solution { public: string minWindow(string s, string t) { int n1=s.size(),n2=t.size(); string ans; if(n1<n2) return ans; int ct1[130]={0},ct2[13 阅读全文
posted @ 2022-02-05 20:51 Jerry2km1 阅读(80) 评论(0) 推荐(0)
摘要:class Solution { public: int lengthOfLongestSubstring(string s) { int n=s.size(); if(n<2) return n; bool ct[128]={0}; int l=0,r=0,temp; int ans=0; cha 阅读全文
posted @ 2022-02-05 20:46 Jerry2km1 阅读(36) 评论(0) 推荐(0)
摘要:class Solution { public: vector<int> findAnagrams(string s, string p) { int n1=s.size(),n2=p.size(); vector<int> ans; if(n1<n2) return ans; vector<int 阅读全文
posted @ 2022-02-05 20:42 Jerry2km1 阅读(41) 评论(0) 推荐(0)
摘要:class Solution { public: bool checkInclusion(string s1, string s2) { int n1=s1.size(),n2=s2.size(); if(n1>n2) return false; vector<int> count1(26),cou 阅读全文
posted @ 2022-02-05 20:39 Jerry2km1 阅读(52) 评论(0) 推荐(0)
摘要:class NumMatrix { public: vector<vector<int>> sums; NumMatrix(vector<vector<int>>& matrix) { int m = matrix.size(); if(m>0) { int n = matrix[0].size() 阅读全文
posted @ 2022-02-05 20:35 Jerry2km1 阅读(33) 评论(0) 推荐(0)
摘要:class Solution { public: int pivotIndex(vector<int>& nums) { int n=nums.size(); if(n<=2) return -1; int presum[10010]={0}; for(int i=0;i<n;++i) { pres 阅读全文
posted @ 2022-02-05 20:01 Jerry2km1 阅读(22) 评论(0) 推荐(0)
摘要:class Solution { public: int findMaxLength(vector<int>& nums) { int maxLength=0,counter=0,pre,temp; unordered_map<int,int> mp; //hash表存储的是counter每个取值第 阅读全文
posted @ 2022-02-05 19:26 Jerry2km1 阅读(30) 评论(0) 推荐(0)
摘要:class Solution { public: int subarraySum(vector<int>& nums, int k) { int n=nums.size(); int presum[20010]={0}; unordered_map<int,int> mp; mp[0]=1; //前 阅读全文
posted @ 2022-02-05 19:23 Jerry2km1 阅读(44) 评论(0) 推荐(0)
摘要:class Solution { public: int numSubarrayProductLessThanK(vector<int>& nums, int k) { if(k<2) return 0; int n = nums.size(); int i=0,j=0; int product=1 阅读全文
posted @ 2022-02-05 19:16 Jerry2km1 阅读(18) 评论(0) 推荐(0)
摘要:class Solution { public: int minSubArrayLen(int target, vector<int>& nums) { int sum[100010]={0}; int n=nums.size(); for(int i=1;i<=n;++i) { sum[i]=su 阅读全文
posted @ 2022-02-05 18:03 Jerry2km1 阅读(39) 评论(0) 推荐(0)