
LeetCode
intmain_S
s799009642@163.com
799009642@qq.com
展开
-
由LeetCode18.四数和 推广到n数和问题
【代码】由LeetCode18.四数和 推广到n数和问题。原创 2023-03-22 10:19:36 · 123 阅读 · 0 评论 -
Leecode代码本地编译器运行模板
【代码】Leecode代码本地编译器运行模板。原创 2023-02-28 12:20:34 · 547 阅读 · 1 评论 -
567. 字符串的排列(滑动窗口)
【代码】567. 字符串的排列。原创 2023-02-27 22:46:32 · 127 阅读 · 0 评论 -
Leetcode3. 无重复字符的最长子串(滑动窗口)
滑动窗口模板:(附实例:Leetcode3. 无重复字符的最长子串)原创 2023-02-27 17:59:56 · 107 阅读 · 0 评论 -
148. 排序链表(扩展876. 链表的中间结点)
148. 排序链表(扩展876. 链表的中间结点)原创 2023-02-02 12:28:56 · 135 阅读 · 0 评论 -
236. 二叉树的最近公共祖先
236. 二叉树的最近公共祖先原创 2023-01-27 23:27:49 · 111 阅读 · 0 评论 -
二叉树三种遍历方式的模板
二叉树三种遍历方式的模板原创 2023-01-27 23:01:22 · 219 阅读 · 0 评论 -
力扣142. 环形链表 II
力扣环形链表 II原创 2023-01-18 12:23:23 · 238 阅读 · 0 评论 -
Java排列组合代码
Java排列组合代码原创 2023-01-16 16:59:21 · 234 阅读 · 0 评论 -
剑指 Offer 38. 字符串的排列
力扣#include<stdio.h>#include <string>#include <vector>#include <set>#include <iostream>using namespace std;class Solution {public: vector<string> permutation(string s) { dfs(s, 0); return r.原创 2022-04-08 17:56:40 · 202 阅读 · 0 评论 -
剑指 Offer 60. n个骰子的点数
文章目录题目地址**代码:****递推公式:**空间优化运行结果通过:题目地址力扣https://leetcode-cn.com/problems/nge-tou-zi-de-dian-shu-lcof/[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-u0eeA0sB-1649386810494)(data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==)]代码:原创 2022-04-08 11:04:05 · 297 阅读 · 0 评论 -
剑指 Offer 62. 圆圈中最后剩下的数字
经典约瑟夫环力扣class Solution { public int lastRemaining(int n, int m) { int ans = 0; for(int i = 2;i <= n;i++) ans = (ans+m)%i; return ans; }}作者:vancomycin链接:https://leetcode-cn.com/problems/yuan-quan-zhong-zui-hou-sheng-xia-de-s.原创 2022-02-25 15:28:28 · 252 阅读 · 0 评论 -
剑指 Offer 66. 构建乘积数组
力扣class Solution {public: vector<int> constructArr(vector<int>& a) { int len =a.size(); vector<int> b(len,1); int t=1; if(len == 0 ) return {}; for(int i=1;i<len;++i) b[i.原创 2021-12-17 11:12:57 · 106 阅读 · 0 评论 -
剑指 Offer 56 - I. 数组中数字出现的次数
力扣异或运算有个重要的性质,两个相同数字异或为 0根据^运算,只要找到res1,res2的某一位异或为1的位值,就可以吧nums分出两个数列,再对每个队列进行异或运算,就可以分别找出每个队列的res,再返回res1,res2即可class Solution {public: vector<int> singleNumbers(vector<int>& nums) { int x=0; int y=1; ..原创 2021-12-16 16:37:32 · 126 阅读 · 0 评论 -
剑指 Offer 16. 数值的整数次方
剑指 Offer 16. 数值的整数次方要求不使用库函数来实现pow(x,b)class Solution {public://快速幂法 可将时间复杂度降低至 O(log_2 n) double myPow(double x, int n) { if(x == 0) return 0; long b = n; double res = 1.0; //将5的-2次方转位 1/5的平方 if(b < 0原创 2021-12-11 12:50:52 · 602 阅读 · 0 评论 -
剑指 Offer 45. 把数组排成最小的数(内置排序算法)
力扣重构‘<’运算符class Solution {public: string minNumber(vector<int>& nums) { vector<string> ans; string res; for(auto i:nums) ans.push_back(to_string(i)); //若拼接字符串 x + y > y + x,则 x “大于” y.原创 2021-12-07 17:04:09 · 132 阅读 · 0 评论 -
剑指 Offer 58 - I. 翻转单词顺序
力扣题解:力扣模板代码:1、如果有前后置空格,那么必须判断临时字符串非空才能输出,否则会输出空串模板如下: s += " "; //这里在最后一个字符位置加上空格,这样最后一个字符串就不会遗漏 string temp = ""; //临时字符串 vector<string> res; //存放字符串的数组 for (char ch : s) //遍历字符句子 { if (ch == ' ') //遇到空格转载 2021-12-04 12:29:07 · 119 阅读 · 0 评论 -
C++ new Listnode操作
ListNode*node =newListNode(0,head);thefirstmembervalto0,andthesecondmembernexttoheadListNode*node =newListNode(0);new member 'node' val to 0ListNode* node=new ListNode();new member 'node' without initial val力扣...原创 2021-12-03 16:15:53 · 2327 阅读 · 0 评论 -
17. 电话号码的字母组合
力扣、erase函数erase一共三种用法:1.erase(pos,n);删除从下标pos开始的n个字符,比如erase(0,1)就是删除第一个字符2.erase(position);删除postion处的一个字符(position是一个string类型的迭代器)3.erase(first,last)删除从first到last之间的字符(first和last都是迭代器)class Solution {public: vector<string> table原创 2021-12-02 18:30:52 · 235 阅读 · 0 评论 -
剑指 Offer 46. 把数字翻译成字符串
力扣class Solution {public: int translateNum(int num) { if(num < 10) return 1; string s=to_string(num); int p=1; int q=1; int r =1; for(int i =1;i<s.size();++i){ p=q; q=.原创 2021-12-01 17:35:58 · 83 阅读 · 0 评论 -
LeetCode从上到下打印二叉树C++(1-3题)
题目链接:「剑指 Offer」 - 学习计划 - 力扣(LeetCode)全球极客挚爱的技术成长平台题目一:/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * };原创 2021-11-28 15:44:32 · 618 阅读 · 0 评论 -
剑指 Offer 50. 第一个只出现一次的字符(vector、unordered_map)
vectorclass Solution {public: char firstUniqChar(string s) { int len = s.size(); vector<int> c(26); for(int i=0;i<len;++i){ c[s[i] - 'a']++; } for(int i=0;i<len;++i){ if(.原创 2021-11-26 13:08:21 · 250 阅读 · 0 评论 -
ddressSanitizer: heap-use-after-free on address.....
LeetCode翻转链表力扣报错代码/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: ListNode* reverseList(ListNode* head) { .原创 2021-11-23 16:09:08 · 586 阅读 · 0 评论 -
4. 寻找两个正序数组的中位数(STL简洁版)
题目链接:4. 寻找两个正序数组的中位数简洁STLclass Solution {public: double findMedianSortedArrays(vector<int>& nums1, vector<int>& nums2) { nums2.insert(nums2.end(), nums1.begin(), nums1.end()); sort(nums2.begin(), nums2.end(原创 2021-11-22 17:34:07 · 553 阅读 · 0 评论