自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 资源 (4)
  • 问答 (1)
  • 收藏
  • 关注

原创 动态规划入门题 leetcode714 买卖股票

leetcode714 买卖股票最佳时机含手续费给定一个整数数组 prices,其中第 i 个元素代表了第 i 天的股票价格 ;非负整数 fee 代表了交易股票的手续费用。你可以无限次地完成交易,但是你每笔交易都需要付手续费。如果你已经购买了一个股票,在卖出它之前你就不能再继续购买股票了。返回获得利润的最大值。注意:这里的一笔交易指买入持有并卖出股票的整个过程,每笔交易你只需要为支付一次手续费。示例 1:输入: prices = [1, 3, 2, 8, 4, 9], fee = 2输出:

2020-12-17 11:11:48 160 1

原创 ajax学习(一):基本用法

ajax介绍什么是 AJAX ?AJAX = 异步 JavaScript 和 XML。AJAX 是一种用于创建快速动态网页的技术。通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。传统的网页(不使用 AJAX)如果需要更新内容,必需重载整个网页面。有很多使用 AJAX 的应用程序案例:新浪微博、Google 地图、开心网等等。基本原理ajax原理1、创建xhr对象XMLHttpRequest(简称

2020-12-13 23:57:05 123

原创 dubbo+zookeeper学习(2):dubbo负载均衡

Dubbo的负载均衡策略使用Dubbo,我们可以非常方便地做服务的水平扩展,集群部署。那么问题来了,Dubbo的负载均衡策略是怎么样的?Dubbo为我们提供了4种策略,默认是随机策略。4种策略分别如下:Random LoadBalance随机,按权重设置随机概率。在一个截面上碰撞的概率高,但调用量越大分布越均匀,而且按概率使用权重后也比较均匀,有利于动态调整提供者权重。RoundRobin LoadBalance轮询,按公约后的权重设置轮询比率。存在慢的提供者累积请求的问题,比如:

2020-11-30 00:14:18 421

原创 zookeeper+dubbo学习(1):安装配置

zookeeper+dubbo学习1.zookeeper安装2.监控中心安装上传解压2.修改配置文件设置成如下注意:如果8080端口被占用就换一个2.启动服务#启动服务./bin/server.sh start#关闭服务./bin/server.sh stop#重启服务./bin/server.sh restart3.安装服务管理平台Dubbo.war文件1.上传解压到tomcat的webapp的root里,注意要把root下的内容清空unzip dub

2020-11-30 00:13:00 99

原创 leetcode74 二分查找

leetcode74 二分查找编写一个高效的算法来判断 m x n 矩阵中,是否存在一个目标值。该矩阵具有如下特性:每行中的整数从左到右按升序排列。每行的第一个整数大于前一行的最后一个整数。示例 1:输入:matrix = [[1,3,5,7],[10,11,16,20],[23,30,34,50]], target = 3输出:true思路该矩阵按照大小顺序已经排好序,将其转换成一维数组就是一个升序数组,因此可以采用二分查找的方式来解决。需要注意的是由于是二维数组所以需要进行坐标的转换

2020-11-29 13:14:59 77

原创 基于springboot、Redis搭建秒杀系统(二)

续上一篇的接下来写。2.5 使用Jmeter进行压力测试官网: https://jmeter.apache.org/1. 介绍Apache JMeter是Apache组织开发的基于Java的压力测试工具。用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域。 它可以用于测试静态和动态资源,例如静态文件、Java 小服务程序、CGI 脚本、Java 对象、数据库、FTP 服务器, 等等。JMeter 可以用于对服务器、网络或对象模拟巨大的负载,来自不同压力类别下测试它们的强度

2020-11-25 13:23:18 152

原创 leetcode179 最大数

最大数给定一组非负整数 nums,重新排列它们每个数字的顺序(每个数字不可拆分)使之组成一个最大的整数。注意:输出结果可能非常大,所以你需要返回一个字符串而不是整数。`示例 1:输入:nums = [10,2]输出:“210”示例 2:输入:nums = [3,30,34,5,9]输出:“9534330”示例 3:输入:nums = [1]输出:“1”示例 4:输入:nums = [10]输出:“10”`思路这道题第一眼看上去并不难,难点在于如何设定一个统一的方法来比

2020-11-21 13:32:05 155

原创 链表的插入排序算法 leetcode147

LeetCode147对链表进行插入排序。插入排序的动画演示如上。从第一个元素开始,该链表可以被认为已经部分排序(用黑色表示)。每次迭代时,从输入数据中移除一个元素(用红色表示),并原地将其插入到已排好序的链表中。示例 1:输入: 4->2->1->3输出: 1->2->3->4示例 2:输入: -1->5->3->4->0输出: -1->0->3->4->5思路插入排序是比较简单的排序。在对链

2020-11-20 12:57:10 147

原创 基于springboot、Redis搭建秒杀系统(一)

秒杀系统前言最近把redis基本的东西学的差不多了,但是没有做过什么具体的项目来实践,于是计划做一个项目来巩固知识。本项目是一个整合springboot、mybatis、redis来做的一个秒杀系统。之后的笔记部分内容来自上述up的笔记。1. 秒杀系统1.1 秒杀场景电商抢购限量商品卖周董演唱会的门票火车票抢座 12306…1.2 为什么要做个系统如果你的项目流量非常小,完全不用担心有并发的购买请求,那么做这样一个系统意义不大。但如果你的系统要像12306那样,接受高并发访问和下

2020-11-20 00:14:51 769 3

原创 leetcode55 跳跃游戏

leetcode55 跳跃游戏给定一个非负整数数组,你最初位于数组的第一个位置。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断你是否能够到达最后一个位置。示例 1:输入: [2,3,1,1,4]输出: true解释: 我们可以先跳 1 步,从位置 0 到达 位置 1, 然后再从位置 1 跳 3 步到达最后一个位置。示例 2:输入: [3,2,1,0,4]输出: false解释: 无论怎样,你总会到达索引为 3 的位置。但该位置的最大跳跃长度是 0 , 所以你永远不可能到达最后一

2020-11-17 11:34:21 73

原创 leetcode406 根据身高重建队列

leetcode406 根据身高重建队列假设有打乱顺序的一群人站成一个队列。 每个人由一个整数对(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]]思路根据题目要求,每个数组的第二位代表了前面有多少个大于或等于它的

2020-11-16 13:14:58 100

原创 Spring Boot入门

**一、**Spring Boot 入门1、Spring Boot 简介简化Spring应用开发的一个框架;整个Spring技术栈的一个大整合;J2EE开发的一站式解决方案;2、微服务2014,martin fowler微服务:架构风格(服务微化)一个应用应该是一组小型服务;可以通过HTTP的方式进行互通;单体应用:ALL IN ONE微服务:每一个功能元素最终都是一个可独立替换和独立升级的软件单元;详细参照微服务文档3、环境准备http://www.gulixueyuan.c

2020-11-12 23:50:26 299

原创 RabbitMQ入门(二):消息模型

在上一篇文章中主要介绍了RabbitMQ的安装配置,以及最简单的消息模型HelloWorld的写法。本篇文章主要写了剩下的四种消息模型,分别为==work queue==、==fanout==、==routing==、==topic==。第二种模型(work quene)Work queues,也被称为(Task queues),任务模型。当消息处理比较耗时的时候,可能生产消息的速度会远远大于消息的消费速度。长此以往,消息就会堆积越来越多,无法及时处理。此时就可以使用work 模型:让多个消费者绑定到

2020-11-12 23:31:19 176

原创 LeetCode49 字母异位分组

LeetCode49 字母异位分组给定一个字符串数组,将字母异位词组合在一起。字母异位词指字母相同,但排列不同的字符串。示例:输入: [“eat”, “tea”, “tan”, “ate”, “nat”, “bat”]输出:[[“ate”,“eat”,“tea”],[“nat”,“tan”],[“bat”]]思路用哈希表进行分类,把String转化为char数组再排序作为key,value为一个List,通过拉链法存放同类的String。主要还是考察哈希表的运用class So

2020-11-12 10:52:02 182 2

原创 LeetCode回溯问题 多问题总结

回溯合辑LeetCode39给定一个无重复元素的数组 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合。candidates 中的数字可以无限制重复被选取。说明:所有数字(包括 target)都是正整数。解集不能包含重复的组合。示例 1:输入:candidates = [2,3,6,7], target = 7,所求解集为:[[7],[2,2,3]]简单的回溯基本就是回溯的模板,注意点就是返回的Arr

2020-11-11 14:06:01 100

原创 rabbitmq入门(一)

RabbitMq1.MQ引言1.1 什么是MQMQ(Message Quene) : 翻译为 消息队列,通过典型的 生产者和消费者模型,生产者不断向消息队列中生产消息,消费者不断的从队列中获取消息。因为消息的生产和消费都是异步的,而且只关心消息的发送和接收,没有业务逻辑的侵入,轻松的实现系统间解耦。别名为 消息中间件 通过利用高效可靠的消息传递机制进行平台无关的数据交流,并基于数据通信来进行分布式系统的集成。1.2 MQ有哪些当今市面上有很多主流的消息中间件,如老牌的ActiveMQ、Rabbi

2020-11-10 00:30:13 75

原创 LeetCode33 搜索旋转排序数组

LeetCode33 搜索旋转排序数组给你一个升序排列的整数数组 nums ,和一个整数 target 。假设按照升序排序的数组在预先未知的某个点上进行了旋转。(例如,数组 [0,1,2,4,5,6,7] 可能变为 [4,5,6,7,0,1,2] )。请你在数组中搜索 target ,如果数组中存在这个目标值,则返回它的索引,否则返回 -1 。示例 1:输入:nums = [4,5,6,7,0,1,2], target = 0输出:4示例 2:输入:nums = [4,5,6,7,0,1,2

2020-11-09 12:18:19 109

原创 LeetCode31 下一个排列

LeetCode31 下一个排列实现获取下一个排列的函数,算法需要将给定数字序列重新排列成字典序中下一个更大的排列。如果不存在下一个更大的排列,则将数字重新排列成最小的排列(即升序排列)。必须原地修改,只允许使用额外常数空间。以下是一些例子,输入位于左侧列,其相应输出位于右侧列。1,2,3 → 1,3,23,2,1 → 1,2,31,1,5 → 1,5,1思路:我们希望下一个数比当前数大,这样才满足“下一个排列”的定义。因此只需要将后面的「大数」与前面的「小数」交换,就能得到一个更大的数。

2020-11-09 11:09:53 65

原创 LeetCode26、27 删重复元素

LeetCode26 删重复元素给定一个排序数组,你需要在 原地 删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。示例 1:给定数组 nums = [1,1,2],函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。你不需要考虑数组中超出新长度后面的元素。思路考虑用 2 个指针,一个在前记作 p,一个在后记作 q,算法流程如下:1.比较 p

2020-11-08 11:17:37 340

原创 LeetCode 24 两两交换链表节点

LeetCode 24 两两交换链表节点给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。示例 1:输入:head = [1,2,3,4]输出:[2,1,4,3]示例 2:输入:head = []输出:[]示例 3:输入:head = [1]输出:[1]非递归解法:三指针class Solution { public ListNode swapPairs(ListNode head) {

2020-11-07 12:30:05 89

原创 leetcode 56、57

leetcode56 合并区间给出一个区间的集合,请合并所有重叠的区间。示例 1:输入: intervals = [[1,3],[2,6],[8,10],[15,18]]输出: [[1,6],[8,10],[15,18]]解释: 区间 [1,3] 和 [2,6] 重叠, 将它们合并为 [1,6].示例 2:输入: intervals = [[1,4],[4,5]]输出: [[1,5]]解释: 区间 [1,4] 和 [4,5] 可被视为重叠区间。思路:将整个数组按照第一个元素的值排序

2020-11-04 12:44:27 96

原创 Typora修改空格样式(blockquote)

Typora修改 >空格 样式(blockquote)​ 最近一直在用typora做笔记,经常会用到>空格这个快捷键加一些小标题,如下:但是这个小模块的样式初始是灰色的,在文字多了的时候会不显眼,也不是那么好看.接下来说一下改样式的方法。​ 偏好设置->外观->打开主题文件夹->找到当前主题的文件夹。我使用的是github的主题,就直接修改github.css。打开该文件后,找到blockquoteBorder-left就是左边色块的颜色,下面的color是字体

2020-10-04 11:53:13 2831

原创 南大软件工程2019考研复试上机题+个人答案

最近在准备南大软工的复试,正好把自己做的上机真题的解贴出来,希望可以帮助到对这道题有疑惑的同学。因为给自己限制了时间,所有没有做优化,望见谅。题目:给一个字符串 由RGB(红绿蓝)3种字母组成1.找出串中最长的相同子串,输出字母以及所在位置,然后剔除(如有多个相同拿最左的子串)2.将剩余部分按序连接,如果只有一个字母则结束游戏,否则返回第一步注意每次输出的位置为原始串中的位置例:RBB...

2020-03-26 17:41:45 2062 2

超市管理系统

超市管理系统,用SpringBoot框架,包括前端后端,数据库

2019-06-05

DosBox Dos环境搭建工具

搭建windows环境下的dos环境,以及学习编译语言要用的到工具,

2019-01-06

操作系统进程管理源码附报告

操作系统系统调用的一个课外实验,实现了进程并发执行,含有源码以及报告

2019-01-06

编译原理课程设计词法语法分析器

编译原理的课程设计,用c++完成了词法分析和语法分析的功能,附带结题报告。

2018-12-27

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

TA关注的人

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