自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(110)
  • 资源 (2)
  • 收藏
  • 关注

原创 背包问题模板总结

文章目录三种背包比较状态转移方程分类解题模板例题分割等和子集零钱兑换279完全平方数目标和377 组合总和518. 零钱兑换 II1115 掷骰子的方法474 一和零1048 最后一块石头重量三种背包比较01背包N件物品,每件物品有价值V和消耗的容量C, 背包的容量有限,一个物品只能取一次,什么情况下价值最大?完全背包N件物品,每件物品有价值V和消耗的容量C, 背包容量有限,一个物品可以无限取多次,什么情况下价值最大?多重背包N件物品,每件物品有价值V和消耗的容量C, 背包容量有限,一个物品

2021-06-01 09:32:19 229

原创 石子游戏-系列DP

文章目录486. 预测赢家方法一 直观迭代方法二 记忆化方法三 动态规划石子游戏石子游戏 VII石子游戏 III486. 预测赢家题目????给定一个表示分数的非负整数数组。 玩家 1 从数组任意一端拿取一个分数,随后玩家 2 继续从剩余数组任意一端拿取分数,然后玩家 1 拿,…… 。每次一个玩家只能拿取一个分数,分数被拿取之后不再可取。直到没有剩余分数可取时游戏结束。最终获得分数总和最多的玩家获胜。给定一个表示分数的数组,预测玩家1是否会成为赢家。你可以假设每个玩家的玩法都会使他的分数最大化。

2021-04-21 14:52:09 258

原创 开口说英语真的不难!-面微软

文章目录一面二面三面总结简单介绍下自己的面试微软的过程,主要的英语面试的过程 。一面一面的面试官超级好,是个上交的男孩子,开头寒暄了一句,可以叫我David,之后开始说英语,大约一半的面试时间都是用英语,我准备了一场英文自我介绍,首先是标准的自我介绍环节。问题一针对我的项目,希望我介绍dns(我卡壳了,我想说映射都不记得天天用的map啊!我每次磕磕巴巴介绍完,面试官都很流利的用一串英文再次帮我解释一次的感觉,我就嗯嗯yes。其实自己是磕磕巴巴解释了大概意思的)。问题二用英文介绍了自己在项目中的贡献,主

2021-04-21 11:35:19 602

原创 LIS递增子序列o(nlogn)时间复杂度-马戏团人塔

有个马戏团正在设计叠罗汉的表演节目,一个人要站在另一人的肩膀上。出于实际和美观的考虑,在上面的人要比下面的人矮一点且轻一点。已知马戏团每个人的身高和体重,请编写代码计算叠罗汉最多能叠几个人。思路:首先按照身高从低到高排序,然后找到对应体重的最长递增子序列。注意身高和体重需要严格递增,不可以相等。解法一: o(n^2)class Solution { struct people{ int height; int weight; bool op

2021-03-31 11:22:37 131

原创 高楼扔鸡蛋问题-经典动态规划

文章目录1. 高楼扔鸡蛋2. 猜数字大小1. 高楼扔鸡蛋给你 k 枚相同的鸡蛋,并可以使用一栋从第 1 层到第 n 层共有 n 层楼的建筑。已知存在楼层 f ,满足 0 <= f <= n ,任何从 高于 f 的楼层落下的鸡蛋都会碎,从 f 楼层或比它低的楼层落下的鸡蛋都不会破。每次操作,你可以取一枚没有碎的鸡蛋并把它从任一楼层 x 扔下(满足 1 <= x <= n)。如果鸡蛋碎了,你就不能再次使用它。如果某枚鸡蛋扔下后没有摔碎,则可以在之后的操作中 重复使用 这枚鸡蛋。

2021-03-26 22:16:38 2498

原创 二进制转换

看到一位大佬的写法,感觉太有意思了,非常巧妙,学习一下。题目描述A non-empty array A consisting of N non-negative integers is given.Its binarian is defined as:binarian(A)=pow2(A[0]) + pow2(A[1]) + ... + pow2(A[N-1])pow2(K) = 2 ^ KFor example, the binarian of array A such that:[1,

2021-03-13 14:50:03 196

原创 二叉树的最大路径和

A path in a binary tree is a sequence of nodes where each pair of adjacent nodes in the sequence has an edge connecting them. A node can only appear in the sequence at most once. Note that the path does not need to pass through the root.The path sum of a

2021-03-01 16:32:36 117

原创 判断二分图

题目There is an undirected graph with n nodes, where each node is numbered between 0 and n - 1. You are given a 2D array graph, where graph[u] is an array of nodes that node u is adjacent to. More formally, for each v in graph[u], there is an undirected edg

2021-02-27 20:49:21 89

原创 今日头条面试题-基础练习

都是基础题目,代码也起来也挺绕的串珠作为一个手串艺人,有金主向你订购了一条包含n个杂色串珠的手串——每个串珠要么无色,要么涂了若干种颜色。为了使手串的色彩看起来不那么单调,金主要求,手串上的任意一种颜色(不包含无色),在任意连续的m个串珠里至多出现一次(注意这里手串是一个环形)。手串上的颜色一共有c种。现在按顺时针序告诉你n个串珠的手串上,每个串珠用所包含的颜色分别有哪些。请你判断该手串上有多少种颜色不符合要求。即询问有多少种颜色在任意连续m个串珠中出现了至少两次。#include <iostr

2021-02-25 22:29:43 198

原创 美团笔试-回转寿司

小美请小团吃回转寿司。转盘上有N盘寿司围成一圈,第1盘与第2盘相邻,第2盘与第3盘相邻,…,第N-1盘与第N盘相邻,第N盘与第1盘相邻。小团认为第i盘寿司的美味值为A[i](可能是负值,如果小团讨厌这盘寿司)。现在,小团要在转盘上选出连续的若干盘寿司,使得这些寿司的美味值之和最大(允许不选任何寿司,此时美味值总和为0)。输入:第一行输入一个整数T(1<=T<=10),表示数据组数。每组数据占两行,第一行输入一个整数N(1<=N<=10^5);第二行输入N个由空格隔开的整数,

2021-02-24 23:22:51 1286

转载 C++ priority_queue的自定义比较方式

经常需要用优先队列来进行一些算法的优化,于是今天对优先队列的排序方式做一个小结:首先,先手写一个小根堆,再分析代码#include<queue>#include<vector>#include<iostream>using namespace std; struct node{ int x, y; node(int x,int y):x(x),y(y){}}; struct cmp{ bool operator()(node

2021-02-24 16:39:26 1095

原创 右移一位和除以2的区别

总结n为非负数时,>> 1和/ 2的结果是一样的n为负数且还是偶数时,>> 1和/ 2的结果是一样的n为负数且还是奇数时,>> 1和/ 2的结果是不一样的原因是奇数除二会发生截断现象。而>> 1和/ 2在n为负奇数时截断的反向不一样。-5 / 2 = -(int)2.5 = -2,这里是把绝对值变小了,加个负号,结果就变大了。-5 >> 1 = (1011) >> 1 = (1101) = -3,假设用4-bit表示一个

2021-02-24 14:43:21 1659

转载 求组合数

想法:以前做比赛的时候遇到很多需要计算组合数的情况,都是当时手敲的,写递归不是暴就是超时啥的,或者是因为要取模,然后还要求逆元,所以敲得不是慢就是老是出问题,所以现在搞出模板来以后用就快了。 一:线性求C(n,m) 解释:由HDU 4927这道题求的组合数,可以了解到组合数的一些递推快速求法,因为这道题就是卡组合数的时间的。如果我们要算C(10,4),我们可以先算C(10,1),再算C(10,2),再算C(10...

2021-02-23 10:45:10 186

原创 买卖股票问题汇总

文章目录1. 买卖股票最佳时机2. 买卖股票的最佳时机 II3. 买卖股票的最佳时机 III买卖股票的最佳时机 IV1. 买卖股票最佳时机给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。如果你最多只允许完成一笔交易(即买入和卖出一支股票一次),设计一个算法来计算你所能获取的最大利润。注意:你不能在买入股票前卖出股票。输入: [7,1,5,3,6,4]输出: 5解释: 在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1

2020-12-28 16:54:56 140

原创 第k大数字-快排,大根堆实现

快排思路实现有一个整数数组,请你根据快速排序的思路,找出数组中第K大的数。给定一个整数数组a,同时给定它的大小n和要找的K(K在1到n之间),请返回第K大的数,保证答案存在。class Finder {public: int findKth(vector<int> a, int n, int K) { // write code here return findK(a, 0, n-1, K); } int partition(vec

2020-12-10 15:50:17 186

原创 链表插入排序,选择排序,归并排序实现c++

目录插入排序选择排序归并排序插入排序leetcode 147/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: ListNode* insertionSortList(ListNod

2020-12-10 11:12:41 139

转载 约瑟夫环

约瑟夫问题 约瑟夫问题是个著名的问题:N个人围成一圈,第一个人从1开始报数,报M的将被杀掉,下一个人接着从1开始报。如此反复,最后剩下一个,求最后的胜利者。 例如只有三个人,把他们叫做A、B、C,他们围成一圈,从A开始报数,假设报2的人被杀掉。 首先A开始报数,他报1。侥幸逃过一劫。然后轮到B报数,他报2。非常惨,他被杀了C接着从1开始报数接着轮到A报数,他报2。也被杀死了。最终胜利者是C 解决方案 普通解法 刚学数据结构的时候,我们可能用链表的方法去模拟这个过程,N个人看作是N个链表节点,...

2020-11-18 16:54:39 293

原创 前缀数组后缀数组

连续两天的周赛,双周赛都用到了,记录一下。1653. 使字符串平衡的最少删除次数给你一个字符串 s ,它仅包含字符 ‘a’ 和 'b’​​​​ 。你可以删除 s 中任意数目的字符,使得 s 平衡 。我们称 s 平衡的 当不存在下标对 (i,j) 满足 i < j 且 s[i] = ‘b’ 同时 s[j]= ‘a’ 。请你返回使 s 平衡 的 最少 删除次数。输入:s = "aababbab"输出:2解释:你可以选择以下任意一种方案:下标从 0 开始,删除第 2 和第 6 个字符("aa

2020-11-16 11:12:30 890

原创 根据身高建队列

假设有打乱顺序的一群人站成一个队列。 每个人由一个整数对(h, k)表示,其中h是这个人的身高,k是排在这个人前面且身高大于或等于h的人数。 编写一个算法来重建这个队列。注意:总人数少于1100人。输入:[[7,0], [4,4], [7,1], [5,0], [6,1], [5,2]]输出:[[5,0], [7,0], [5,2], [6,1], [4,4], [7,1]] /** * 解题思路:先排序再插入 * 1.排序规则:按照先H高度降序,K个数升序排序

2020-11-16 09:54:20 526 1

原创 回文字串---DP----Manacher(马拉车)

以下题为例:5. 最长回文子串给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。输入: "babad"输出: "bab"注意: "aba" 也是一个有效答案。一、DP,O(n^2)dp[i][j]表示i到j是否为回文字符串class Solution {public: string longestPalindrome(string s) { int len = s.size(); if(s.size() ==

2020-11-13 11:55:21 96

转载 一致性哈希DHT

简介一致性哈希可以有效解决分布式存储结构下动态增加和删除节点带来的问题。传统问题比如原本的设计一个库30个分表存储用户数据,当查询数据时,根据用户的id%30或者其他的简单的hash算法找到用户数据所在的分表,再去查询用户数据。但是当数据量陡增,30个分表不够用了,需要增加为80个分表,hash算法也需要改变,也需要做相应的数据迁移,代价很大。解决方法将全量缓存空间当成一个环形存储结构,环形空间共有2^32次方个缓存区。2. 每一个缓存的key都可以对应一个32位的二进制数字,所以对应某一个

2020-11-09 20:24:08 193 1

原创 pair<int,int>排序++优先队列重载排序

最接近原点的 K 个点题目链接我们有一个由平面上的点组成的列表 points。需要从中找出 K 个距离原点 (0, 0) 最近的点。(这里,平面上两点之间的距离是欧几里德距离。)你可以按任何顺序返回答案。除了点坐标的顺序之外,答案确保是唯一的。示例:输入:points = [[1,3],[-2,2]], K = 1输出:[[-2,2]]解释: (1, 3) 和原点之间的距离为 sqrt(10),(-2, 2) 和原点之间的距离为 sqrt(8),由于 sqrt(8) < s.

2020-11-09 10:32:59 2670 1

原创 刷题笔记-小技巧

sort(nums.begin(),nums.end(),greater<int>());//从大到小排序 sort(nums.begin(),nums.end(),less<int>()) 从小到大排序

2020-11-04 15:01:42 96

原创 前缀树C++

文章目录前缀树代码前缀树特点就是利用空间换时间,通过利用前缀存储的方法达到高效的查找效率。3个基本性质:根节点不包含字符,除根节点外每一个节点都只包含一个字符。从根节点到某一节点,路径上经过的字符连接起来,为该节点对应的字符串。每个节点的所有子节点包含的字符都不相同假设有abc,abd,bcd,efg,hii,那么我们构建如下一个树结构用于表示这些单词这样带来的问题就是如果匹配b,这个单词是否出现过呢,bc出现过吗? 针对上述问题,为每个节点添加字符串的统计信息,表示以这个节点对

2020-10-30 15:30:52 179

原创 旋转排列数组题-二分

参考【leetcode题解】文章目录33. 搜索旋转排序数组(不重复,查找特别值)81. 搜索旋转排序数组 II(重复,查找特定值)153. 寻找旋转排序数组中的最小值(不重复,寻找最小值)154. 寻找旋转排序数组中的最小值 II(重复,寻找最小值)33. 搜索旋转排序数组(不重复,查找特别值)给你一个升序排列的整数数组 nums ,和一个整数 target 。假设按照升序排序的数组在预先未知的某个点上进行了旋转。(例如,数组 [0,1,2,4,5,6,7] 可能变为 [4,5,6,7,0,1,2

2020-10-16 15:05:13 90

原创 二分查找(二)

之前转载过一篇作者写的二分,分别阐述了三种情况,寻找值,寻找左边界,寻找右边界,最近看了labuladong的文章,新的边界套路理解,总结。原来的文章:二分原来这篇更容易理解,新文章套路更统一整齐。寻找一个数int binarySearch(int[] nums, int target){ int left = 0, right = nums.size()-1; while(left<=right){ int mid = left + (right - left)/2; if(nu

2020-10-15 10:11:24 51

原创 素数筛选法

当获取一个素数时,将他所有的倍数标记为非素数,当遍历到一个数字没有被标记,说明没有比他小的素数因数,确定为素数。例子:从2开始遍历2到10000的所有整数,找到所有素数int prime_size = 0;int prime[10000];int mark[10001];void init(){ for(int i = 2; i <= 10000; i++){ if(mark[i])continue; prime[prime_size++] = i; for(int j =

2020-10-13 21:05:06 87

原创 单调栈

文章目录739. 每日温度496. 下一个更大元素 I503. 下一个更大元素 II42 接雨水84. 柱状图中最大的矩形单调栈就是栈里面存放的数据都是有序的,所以可以分为单调递增栈和单调递减栈两种。单调递增栈就是从栈底到栈顶是从大到小单调递减栈就是从栈底到栈顶是从小到大单调栈主要回答这样的几种问题比当前元素更大的下一个元素比当前元素更大的前一个元素比当前元素更小的下一个元素比当前元素更小的前一个元素看题目,根据代码手工画一下运行过程就可以明白了:举个例子,Next Greater

2020-10-13 09:53:48 86

原创 访问控制策略的实时冲突和检测

文章目录安全挑战基于 Flowpath 的 SDN 安全策略动态冲突检测方法冲突检测与解决解决策略添加防火墙规则和更新防火墙规则添 加 流 表 项 和 更 新 流 表 项安全挑战如下图例子:防火墙策略为:禁止A和C通信,通过重写IP字段,达到了绕过的效果美 国德克萨斯农工大学研究小组提出了一种其 中 提 出 了 基 于 别 名 集 的 SDN 安 全 策 略 冲 突 检 测 方 法 .该 方 法 将 通 信 中 源 地 址 和 目 的 地 址 分 别 放 到 两 个 地 址 集 合 中 ,并 将 S

2020-10-08 15:58:32 1316 1

原创 荷兰三色旗

leetcode 75 颜色分类给定一个包含红色、白色和蓝色,一共 n 个元素的数组,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。此题中,我们使用整数 0、 1 和 2 分别表示红色、白色和蓝色示例输入: [2,0,2,1,1,0]输出: [0,0,1,1,2,2]class Solution {public: void sortColors(vector<int>& nums) { // 荷兰三色旗

2020-10-07 09:39:31 254

转载 mysql 窗口函数排序

窗口函数rank, dense_rank, row_number select *, rank() over (order by 成绩 desc) as ranking, dense_rank() over (order by 成绩 desc) as dese_rank, row_number() over (order by 成绩 desc) as row_numfrom 班级

2020-10-06 17:18:25 594

原创 crossPath attack:通过共享链路攻击控制平面读书笔记

文章目录abstractintroductionthreat modelthe crossPath attackadversarial path reconnaissancestage 1stage 2improved reconnaissanceDefense Against the CrossPath Attackabstract利用控制流量和数据流量共享的链路,利用精心设计的数据流里破坏控制流量的转发。本文值得学习:各种图表的使用,实验环节,数据建模环节。introduction链路共享的这

2020-10-04 15:09:36 497

原创 Detecting DoS Attacks Based on Multi-features in SDN-读书笔记

文章目录INTRODUCTIONRELATED WORKDOS DETECTION1 ESIPS (ENTROPY OF SOURCE IPS)2. SFT (SIMILARITY OF FLOW TABLES)3 GRMMP (GROWTH RATE OF MAX MATCHED PACKETS)4 GRMMB (GROWTH RATE OF MAX MATCHED BYTES)5. PFSP (PERCENTAGE OF FLOWS WITH SMALL NUMBER OF PACKETS)6 PFS

2020-09-30 15:08:33 238

原创 kmp字符串匹配算法

prefix_table next 数组GTGTGCF为例子,他的前缀表,前后缀相等的最大长度,不包含本身。--------------------- -1G----------------------0GT---------------------0GTG--------------------1GTGT-------------------2GTGTG------------------3GTGTGC-----------------0GTGTGCF-----------------0

2020-09-29 11:12:07 56

原创 字符串模式匹配(BF--RK--BM--KMP)

目录BFRKBM坏字符规则好后缀规则KMPnextBFBrute Force,暴力破解,时间复杂度最大为O(mn)bool patternMatching(string pattern, string value) { int m = pattern.size(); int n = value.size(); for(int i = 0; i <= (n-m); i++){ int begin = i;

2020-09-28 20:33:10 112

原创 DDS:分布式动态迁移策略读书笔记

DDS: Distributed Decision Strategy Based on Switch Migration Towards SDN Control Plane目录DDS: Distributed Decision Strategy Based on Switch Migration Towards SDN Control Planeabstractintroductionanalysis and formulationstrategy implementationA. stage 1B. s

2020-09-28 15:30:21 285

原创 二叉树遍历-递归迭代整理

前序遍历: 节点-左子树-右子树(中-左-右)中序遍历: 左子树-节点-右子树(左-中-右)后续遍历: 左子树-右子树-节点(左-右-中)数据结构 Definition for a binary tree node. struct TreeNode { int val; TreeNode *left; TreeNode *right; TreeNode() : val(0), left(nullptr), right(nullptr) {}.

2020-09-24 11:28:15 83

原创 Dynamic Controller Provisioning in Software Defined Networks-读书笔记

目录abstractintroductionrelated worksystem descriptionproblem formulationabstractSDN在广域网中,存在单点故障,常常使用分布式控制平面,但是这就存在动态控制器的供应问题(dynamic controller provision problem,DCPP)。本文的工作: 动态调整活跃的控制器数量,提出两种启发式算法解决DCPP。introduction流建立时间(flow setup time):交换机收到一个新流,上报控

2020-09-23 21:46:49 245

转载 红黑树-笔记

目录二叉查找树红黑树一. 定义和特性三. 变色和旋转BST删除红黑树删除AVL树二叉查找树二叉查找树(binary search tree)BST具备的特性:1. 左子树所有的节点都小于或者等于它根节点的值2. 右子树所有的节点都大于或等于它跟节点的值3. 左右子树分别为二叉查找树好处就是查找方便,类似二分查找,查找的最大次数就等于树的最大高度。在插入新的节点时,利用二分的 思想,一层层比较大小,找到新节点合适的插入位置,但是缺陷是插入的时候可能另二叉树严重失衡,如下:假设初始的二叉查找树只

2020-09-22 15:22:56 92

原创 基于联盟博弈的自适应 SDN 交换机迁移机制-学习笔记

@toc1. 引言为了解决单点故障问题,sdn常采用分布式控制平面,即一个交换机可能连接多个控制器,他们之间存在某种映射关系。常见的有静态映射,但是这样容易发生故障,所以需要建立动态映射根据流量变化实现负载均衡,提高利用率等。本文提出基于联盟博弈的交换机迁移机制。分布式控制平面多个控制器负责管理网络的不同管理域,并与相邻域交换本地信息以增强全局策略的实施,2. 研究动机实现上:OpenFlow 1.3中设置了不同的控制器角色(主控制器和从控制 器),通过改变控制器和交换机的主从关系

2020-09-19 23:08:02 553

加密图片的可逆信息隐藏.rar

课程写的论文, 做的展示PPT,以及对应的讲稿。 为了解决网络环境中存在的安全问题,科学家最早采用加密技术对传输的信息进行加密,通过设计加密算法将要通信的数据按照加密算法进行重新排列,并将置乱后的数据传输出去,接收方必须利用解密算法和正确的密钥才能正确地解密,从而还原出原始的通信数据,加密技术也一直沿用至今。加密技术将秘密信息变换成一些杂乱无章的密文但是也吸引了攻击者,为了克服现有加密算法存在的问题,实现更安全的信息传输,信息安全领域新的分支,能够应用到机密信息保护、版权保护以及安全通信等领域中起到至关重要的作用,所以,信息隐藏技术引起了科研工作者的广泛关注,成为信息安全领域的一个研究热点。 传统的信息隐藏算法,通常只考虑如何提取隐秘信息,而没有考虑如何恢复原宿主信号。 在一些应用场合如医学诊断、法庭举证、艺术作品中,不光需要嵌入隐秘信息对宿主媒介进行保护, 还需要适时地能够无失真地恢复出原始的宿主媒质,传统的信息隐藏算法不能满足其要求。作为信息隐藏技术的一个新的分支,可精确恢复原媒质信息的可逆信息隐藏技术最近正被广泛研究。 可逆信息隐藏主要是指在嵌入信息时,虽然可能会对宿主数据的质量造成一定的破坏,但如果隐藏载体在传输过程没有发生变化,那么合法用户和权威机构在接收端可以根据提取算法提取出隐藏信息,并能够修复失真,实现原始数据的精准恢复。可逆信息隐藏技术与一般的隐藏技术没有原理上的本质区别,但是可逆技术在合法用户得到嵌入信息的过程中,将因信息嵌入而引起的宿主数据失真完全修正。 这种技术在医学、军事、法律证据中有着非常广泛的应用前景。

2020-05-14

hibernate-orm-master.zip

各种包,官网慢,使用直接倒入一些简单JAR就可以了,谢谢支持

2018-01-08

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除