
leetcode刷题
秋名山翻车的
这个人很懒什么都没有留下
展开
-
刷题模板-背包问题
一、0/1背包问题二维dp数组#include<iostream>#include<algorithm>using namespace std;const int N = 1010;// n表示物品数目 m表示总体积大小int n, m;int dp[N][N];int v[N], w[N];int main(){ cin >> n >> m; for(int i=1; i<=n; i++) cin &原创 2024-06-02 12:39:43 · 280 阅读 · 0 评论 -
刷题模板:单链表+邻接表(数组模拟)+ 图的搜索
刷题模板原创 2022-06-25 16:13:36 · 48 阅读 · 0 评论 -
KMP算法模板
kmp算法模板原创 2022-06-23 20:15:25 · 49 阅读 · 0 评论 -
2023届滴滴秋储笔试(0611)
23届滴滴笔试题原创 2022-06-12 09:56:07 · 119 阅读 · 0 评论 -
刷题模板-区间合并、单调栈、滑动窗口、前缀和
之前网易面试的时候遇到过区间合并的问题,结果不会做,进行把y总的课的区间合并部分看了以下,简单记录以下模板,以便于后面学习使用。主要的思路就是:1、先对所有区间的左端点进行排序。2、然后进行区间合并(只有三种情况)第一种情况:当前需合并区间 和 当前维护区间没有交集。第二种情况:当前需合并区间 和 当前维护区间有交集。第三种情况:当前需合并区间 被 当前维护区间包含。#include<bits/stdc++.h>using n...原创 2022-05-13 22:15:19 · 61 阅读 · 0 评论 -
刷题模板-Trie树
跟着y总学习了一下Trie树相关内容,当时理解的时候有些问题,将模板记录下来,感觉用数组存储节点有一些绕~:// Trie树的总节点数int N = 100000;/* son用来存储每节点的next地址 N是总节点数 26是每个节点最多的子节点数目 下一个节点所代表的字符是 第二维的index 举例子: son[2][1] = 4 表示第二个节点的存在一个为b字符的下一个节点,为b字符的下一个节点地址是4(在son中第一维的位置);*/ int...原创 2022-02-10 16:44:45 · 248 阅读 · 0 评论 -
刷题模板-整数二分
看了acwing y神的视频,学习了整数二分的模板,二分经常会出现死循环、越界等情况,所以将模板记录一下:1、二分查找(找target值第一次出现的位置)middle =l + ((r - l)>>1); middle是取得下边界。默认被查找的数组是升序。int binarySearch1(vector<int>& nums, int l, int r, int target){ int middle = l + ((r - l)>&..原创 2022-02-08 15:50:42 · 286 阅读 · 0 评论 -
刷题模板-快慢指针找链表中点
这本身就是一道leetcode题目,但是我在做其他题的时候遇到了如何求链表中点的问题,于是将该方法当作一个模板记录一下:1、存在中点时返回中点,如果有两个中间结点,则返回第2个中间结点。例如:1,2,3,4 存在两个中点: 2 和 3, 则返回3所在节点。class Solution {public: ListNode* middleNode(ListNode* head) { /* 快慢指针 偶数: slo...原创 2022-02-07 23:30:48 · 298 阅读 · 0 评论 -
刷题模板-排序(快排、归并)
快速排序的C++模板,因为边界条件容易搞混,所以将模板记录并背下来:void quickSort(vector<int>& nums, int l, int r){ // 递归的结束条件 记住只有这个地方有一个等于号 if(l >= r) return; int x = nums[l], i = l-1, j = r + 1; while(l<r){ do i++; while(nums[i] < x.原创 2022-02-07 20:33:23 · 565 阅读 · 0 评论