自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

RS的博客

小白的学习之路记录一哈

  • 博客(79)
  • 收藏
  • 关注

原创 HERO联盟知识学堂第一期——数据库工程师进阶之路——化繁为简,从“新”开始——LV2——MySQL数据库迁移上云

文章目录微认证:MySQL数据库迁移上云前言目标数据库上云的背景与优势传统数据库面临的难题云上数据库带来的经济效益云数据库与传统数据库对比个人总结 云数据库省事,花钱少,性能高;自购服务器搭建麻烦,花钱多,性能差。云数据库是高速增长的百亿级市场数据库上云是必然趋势选择迁移目标数据库解决方案对比首先考虑云数据库华为云数据库服务SQL数据库——面向传统OLTP数据库业务NoSQL数据库——面向海量扩展业务数据库生态——构建完整的数据库解决方案关系型数据库RDSRDS MySQL的优势数据管理服务DAS数据库迁移

2021-04-28 15:53:45 156

原创 1002——查找常用字符——简单

这道题要找出所有字符串中的交集字母,最简单你也得全部遍历一遍才可以,所以这道题的时间复杂度至少为O(MN),M为字符串个数,N为字符串平均长度。但是除此之外,字母共有26个,所以最小的时间复杂度应为O(M(N+|e|)),|e|为字符个数,此处为26。我们将每个字符串都遍历一遍,并将其中的字母进行计数排序,每遍历完一个字符串后,我们还要去汇总总的26个字母目前分别出现的最小次数。当字符串全部遍历完成后,根据26个字母出现的最小次数,就可以将字母添加进容器中。最后返回容器即可。class Soluti.

2021-04-02 17:26:53 152

原创 908——最小差值I——简单

既然是最后要求出新数组B中最大值和最小值的最小差值,那我们就用数组中的最大值减去允许范围内的最大值,最小值加上允许范围内的最大值,只要两者出现交集,那么答案必定为0,否则两者相差即为答案。class Solution {public: int smallestRangeI(vector<int>& A, int K) { int min = A[0], max = A[0], ans; for(int i = 1; i < A.siz..

2021-04-02 16:09:15 170

原创 1154——一年中的第几天——简单

这道题完全可以看成是一个简单的加减算术题。只是有两个需要处理的地方:需要把输入的字符串转换成整数形式关于闰年的二月比平年的二月多一天将字符串转换成整数,如果是python的话,直接用int()就好,但是C++只能自己手动转换了,不过过程还是非常简单的。那月份举例:month = (data[i] - '0') * 10 + (date[i+1] - '0')再来分析平闰年,闰年就是可以直接被400整除的年份,或者是可以被4整除但不能被100整除的年份,即 year % 400 == 0 ||..

2021-03-30 13:47:51 132

原创 1480——一维数组的动态和——简单

值得注意的是:数组是以vector的形式给出的,所以要求数组动态和,我们首先要知道vector的元素长度有有多少。int size() const:返回向量中元素的个数知道了元素数量,问题就变得非常简单了。class Solution {public: vector<int> runningSum(vector<int>& nums) { int l = nums.size(), sum = 0; for(int i = 0;.

2021-03-30 11:24:56 81

原创 leetcode刷题记录

1480——一维数组的动态和——简单

2021-03-30 11:17:51 57

原创 分治算法——Merge Sort归并排序

归并排序,可能并没有快速排序使用的次数多,但是归并排序作为一种重要的排序方法自然有它的独到之处。这主要跟归并算法应用的分治思想是分不开的。分治思想一言以蔽之,就是“大事化小,小事化了”,将一个大问题分拆成若干小问题,然后将小问题逐一解决,从而也就将大问题解决了。比如当我们面对一堆海量的数据进行排序时,数据的大小已经超出了内存的可用空间大小,这时候快速排序已经无能为力了。那么唯一的办法就是使用归并排序每次将一部分数据调进内存中,经过多次排序过程,可以实现对全部海量数据的排序。利用将部分数据从硬盘中调进内

2021-03-29 09:51:21 276

原创 分治算法——Karatsuba Multiplication大数乘法

此算法适用于位数比较大的数字做乘法。以例子的形式进行进一步说明:例一:求12*34步骤:首先将两个数字的个位十位分离将两个数字的十位数字相乘1 * 3 = 3将两个数字的个位数字相乘2 * 4 = 8将两个数字的个位与十位相加 1 + 2 = 3,3 + 4 = 7将两个数字的数位和相乘3 * 7 = 21用步骤5的结果减去步骤2和步骤3的结果21 - 3 - 8 = 10将数字按照数字权顺序相加 3 10 + 8 ---------

2021-03-26 09:44:32 1073

原创 Algorithm专项课程-Divide and Conquer, Sorting and Searching, and Randomized Algorithms(持续更新)

Karatsuba MultiplicationMerge Sort归并排序

2021-03-26 09:05:52 254

原创 华为云高校开发者青年班第七期——DevCloud的托马斯商城部署——知识点总结

本文资料引用来自华为云高校开发者第七期的课程资料以及华为云基于DevCloud的托马斯商城微认证资料,本文仅是做了知识总结零、重点知识本项目使用的编程语言为Java本项目使用的系统为CentOS, 用户名为rootECS购买流程:基础配置、网络配置、高级配置、确认配置ECS的具体购买流程为 基础配置 - 系统与镜像选择 - 硬盘配置 - 网络配置ECS计费模式:包年/包月、按需计费、竞价计费本项目使用云数据库(RDS for MySQL)进行数据管理, 用户名为rootRDS计费模式:包年/

2021-03-23 13:14:52 1740 2

原创 Codeforces 745

745A.Hongcow Learns the Cyclic Shift给你一个字符串s,问不断地把首字母取下来放到最后,一共能形成多少个不同的字符串。这道题其实挺简单的,只需要不停遍历就好,一共可以生成s长度的字符串,再遍历进行比较即可。那我把它单独写一下是因为这道题除了用最笨的办法之外,还可以练习set容器的使用以及string的取子串函数(substr())set:集合,关联容器的一种,基于红黑树的平衡二叉检索树的数据结构。功能就像它的名字一样,它里面的元素具有互异性,所以具有自动..

2021-02-09 15:33:51 150

原创 Codeforces 961

我一直感觉Codeforces最牛逼的一件事就是可以把一件很简单的事用英语描述得谁也看不懂,尤其是对我这种刷题多半要靠翻译的人来说更是如此,比如这次刷到的961A. Tetris,就是把一件很简单的事描述得十分复杂。我甚至去专门搜了别人的博客,看里面翻译也是看得挺懵逼的,只看懂了是关于俄罗斯方块的。然后我在本子上画了画,瞬间我就懂啥意思了,好家伙一个计数排序给描述得生怕别人看懂啊。我也看了一些博主的代码,实在是太麻烦了。说了这么多,意思就是一个只有n列的俄罗斯方块,给你m块1x1的小方块以及它们会出

2021-02-08 22:54:18 292

原创 sort()的基本应用

sort()是C++ STL里面一个非常棒的函数,不仅是一个模板函数,还可以自动根据数据多少选择最佳的排序方式。#include <algorithm>using namespace std;sort(a, a + n, cmp);sort()一共可以接收三个参数:第一个是首地址,如果是数组的话,去掉下标即可。如a[1000]的首地址为a[0]或者a。第二个参数为数据范围,或者说尾地址更确切一下。如果要对a[1000]进行排序,如果是范围的话,那么只需要写1000即可。但是我们填写

2021-02-06 08:48:44 374

原创 Codeforces Round #697 (Div. 3)

昨晚的Div3光延时就延了两次,以至于做到后面就困得不行了,脑子一片混乱,就只做了三个题就去睡了。1475A Odd Divisor水题,就是给你一个数让你判断,这个数它能不能被1以外的奇数整除。思路:如果是奇数,直接输出“YES”;如果是偶数的话,那就一直除以2,直到它变成一个奇数为止,如果它没有变成1,那么输出“YES”,否则输出“NO”。#include <bits\stdc++.h>#define LL long longusing namespace std;int

2021-01-26 11:22:45 217

原创 Cofeforces 58A-Chat room

这道题其实就是找字符串里面有没有“hello”这个单词,“hello”可以不连续出现。按说Codeforces的A题都是水题,没有写博客的必要,但是我之前搜这道题的博客,却没有找到我这种思路,所以就在这里做个补充好了。我的思路是:反正就是固定的五个字符,定义一个栈,依次把这“hello”倒序push进去,然后正序遍历字符串S,如果遇到相等的字符,就将栈顶元素出栈。遍历结束后,如果栈不为空,那么自然说明没有找到“hello”。那么将代码粘贴在下面:#include <bits\stdc++.h.

2020-11-10 15:30:05 147

原创 数据结构——第一章——第二节 算法和算法评价

老规矩,要学习算法还是要先了解以下几个问题:什么是算法?算法有什么用?如何选择算法?算法和算法评价算法的基本概念那么如何选择好的算法呢?优先考虑前三者,但是前三者没有太大差别的情况下,那就看第四点。一个算法运行时间短,一个算法运行时间长,肯定闭着眼睛也选时间短的呀。空间方面也是一样的选择。那假如一个算法运行时间短,但是需要空间大;另一个算法运行时间长,但是需要空间小。那该如何选择呢? 时间和空间,我们是更侧重时间的。因为随着科技的发展,硬件越来越便宜,成本越来越低。所以空间换时间是现在算法中经常会

2020-07-16 17:55:11 250

原创 数据结构——第一章——第一节 数据结构的基本概念

第一章的考点其实很少,主要是会了解到几个很重要的概念。要学习数据结构,得先了解以下几个问题:数据结构是什么?数据结构有哪些元素组成的?如何去定义或是描述一个数据结构这些都不知道?那我们就从了解数据结构里的一些概念和术语开始吧。数据结构的基本概念基本概念和术语数据、数据元素、数据项、数据对象数据类型画重点!!!!! ADT可以定义一个完整的数据结构。数据结构数据结构是相互之间存在一种或多种特定关系的数据元素的集合。数据结构包含三方面内容:逻辑结构、存储结构以及数据的运算。逻辑结构决定算法的设计

2020-07-15 16:39:39 679

原创 计算机考研408——知识手册(慢慢写)

为了方便自己的考研,所以决定将自己复习408过程中遇到的问题和知识点总结一下。博客内容会根据自己的复习内容不定期更新的。我的复习路线是从占分比重高的数据结构和计算机组成原理开始,两者取更基础的数据结构,刚开始把各种算法思路理清,有助于后期的学习。算法和硬件搞定后,再去搞定软硬件结合且占分次高的操作系统。最后复习占分比重低,难度稍低但是知识体系杂的计算机网络。下面是博客内容目录408数据结构第一章 绪论第二章 线性表第三章 栈和队列第四章 串第五章 树与二叉树第六章 图第七章 查找第八章 排序计算机组

2020-07-15 11:19:36 1963

原创 Python - 基础讲解(6)

函数关键字关键字def是用来定义方法(即函数)。def test(a,b): pass #可以占位,以供后续补充函数体内容。以上我们定义了一个test函数,并用a,b作为test函数的参数。函数定义函数代码块以 def 关键词开头,后接函数标识符名称和圆括号()。任何传入参数和自变量必须放在圆括号中间。圆括号之间可以用于定义参数。函数的第一行语句可以选择性地使用文档字符串—...

2019-06-30 22:54:16 130

原创 Leetcode - 17电话号码的字母组合

17 电话号码的字母组合题目描述题目分析先做一个索引表,将0-9的数字与其代表的字母对应起来,然后使用递归。代码如下:class Solution {public: vector<string> letterCombinations(string digits) { vector<string> index = {"", "", "ab...

2019-06-29 13:07:47 127

原创 Leetcode - 16最接近的三数之和

16 最接近的三数之和题目描述题目分析求最接近给定值的三数之和,是在之前15 三数之和的基础上又增加了些许难度,让返回这个最接近于给定值的值,即我们要保证当前三数和跟给定值之间的差的绝对值最小,所以我们需要定义一个变量diff用来记录差的绝对值,我们要先将数组排序,然后遍历数组。先确定一个数,然后用两个指针left和right来滑动寻找另外两个数,每确定两个数,我们求出此三数之和,然后算和...

2019-06-29 12:58:00 136

原创 Leetcode - 15三数之和

15 三数之和题目描述题目分析利用set的不能包含重复项的特点来防止重复项的产生。代码如下:class Solution {public: vector<vector<int>> threeSum(vector<int>& nums) { set<vector<int>> res; ...

2019-06-29 12:47:39 113

原创 Leetcode - 13罗马数字转整数

13 罗马数字转整数题目描述题目分析无非是注意如果小数出现在大数前面,要减掉小数即可。代码如下:1、mapclass Solution {public: int romanToInt(string s) { map<char, int> val{{'I',1},{'V',5},{'X',10},{'L',50},{'C',100},{'D',5...

2019-06-29 12:40:49 136

原创 Leetcode - 12整数转罗马数字

12 整数转罗马数字题目描述题目分析

2019-06-29 12:23:45 176

原创 Leetcode - 6Z字形变换

6 Z字形变换题目描述题目给出的接口:class Solution {public: string convert(string s, int numRows) { }};题目分析代码如下:class Solution {public: string convert(string s, int numRows) { i...

2019-06-29 10:20:43 123

原创 Python - 基础讲解(5)

字典字典是另一种可变容器模型,且可存储任意类型对象。字典的每个键值 key=>value 对用冒号 : 分割,每个键值对之间用逗号 , 分割,整个字典包括在花括号 {} 中 ,格式如下所示:d = {key1 : value1, key2 : value2 }键一般是唯一的,如果重复最后的一个键值对会替换前面的,值不需要唯一。>>>dict = {'a': 1, ...

2019-06-27 23:14:20 81

原创 Leetcode - 5最长回文子串

5 最长回文子串题目描述题目给出的接口为:class Solution {public: string longestPalindrome(string s) { }};题目分析定义两个变量 start 和end,分别表示最长回文子串的起点跟长度,在遍历s中的字符的时候,我们首先判断剩余的字符数是否小于等于end 的一半。是的话表明就算从当前到末...

2019-06-27 22:02:43 72

原创 Leetcode - 4寻找两个有序数组的中位数 - difficult

4 寻找两个有序数组的中位数题目描述题目给出的接口为:class Solution {public: double findMedianSortedArrays(vector<int>& nums1, vector<int>& nums2) { int len1 = nums1.size() , l1 =len1 , len...

2019-06-24 12:16:46 60

原创 Python-基础讲解(3)

数值类型int 整型数据,即整数float 浮点型数据,即小数bool 布尔型数据str 字符串型数据算数运算符+加法运算——得到加法的和-减法运算——得到减法的差*乘法运算——得到乘法的积/ 除法运算——得到除法的商//整除运算——得到整除的商% 取模运算 —— 得到除法的余数** 幂运算——即次方运算逻辑运算符运算符逻辑表达式描述实例...

2019-06-21 21:47:01 89

原创 Python-基础讲解(2)

python变量特性 + 命名规则Python 需要使用标识符给变量命名,其实标识符就是用于给程序中变量、类、方法命名的符号(简单来说,标识符就是合法的名字)。Python 语言的标识符必须以字母、下画线(_)开头,后面可以跟任意数目的字母、数字和下画线(_)。此处的字母并不局限于 26 个英文字母,可以包含中文字符、日文字符等。由于 Python 3 支持 UTF-8 字符集,因此 Pyt...

2019-06-21 20:58:02 430

原创 Python-基础讲解(1)

使用一门语言,你首先得获得与它交互方式,这是学习一门语言的开始。python语言基础用法中,使用print()和input()进行输出与数据读入。print()1、字符串及数值的输出字符串即数值可以直接输出>>> print(1) 1 >>> print("Hello World") Hello World 2、变量的输出无论什么类...

2019-06-21 20:05:09 147

原创 Python-解释器

Python、TCL和各种Shell程序一般而言是使用解释器执行的。微软公司的Qbasic语言也是解释方式,它不能生成可执行程序(但Quick Basic和Visual Basic可以);运用广泛的网络编程语言java则同时有解释和编译方式。在开始之前有必要再次强调:下面介绍的解释器是一个源代码解释器。也就是说,解释器在执行时,每次读入一条语句,并且根据这条语句执行特定的操作;然后再读入下一条语...

2019-06-21 19:38:51 227

原创 Python-Anaconda环境配置

Python简介**Python**是一种面向对象的解释型计算机程序设计语言,其使用具有跨平台的特点,可以在Linux、macOS以及Windows系统中搭建环境并使用,其编写的代码在不同平台上运行时,几乎不需要做较大的改动,使用者无不受益于它的便捷性。此外,Python的强大之处在于它的应用领域范围之广,遍及人工智能、科学计算、Web开发、系统运维、大数据及云计算、金融、游戏开发等。实现其强...

2019-06-21 07:47:48 9381

原创 Leetcode - 3无重复字符的最长子串

3 无重复字符的最长子串来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/longest-substring-without-repeating-characters著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。题目描述给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。题目给出的接口为:clas...

2019-06-20 16:31:48 65

原创 Leetcode - 1两数之和

1 两数之和来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/two-sum著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。题目描述题目给出的接口为:class Solution {public: vector<int> twoSum(vector<int>& nums,...

2019-06-20 15:51:15 87

原创 Leetcode - 2两数相加

2 两数相加来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/add-two-numbers著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。题目描述给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。如果,我们将这两个数相加起来,则会...

2019-06-18 22:28:55 191

原创 Leetcode - 43字符串相乘

43 字符串相乘来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/multiply-strings著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。题目描述给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示为字符串形式。示例 1:输入: num1 = ...

2019-06-18 19:49:00 88

原创 Leetcode - 142 环形链表 II

142 环形链表 II来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/linked-list-cycle-ii著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。题目描述给定一个链表,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中...

2019-06-18 15:33:57 88

原创 Leetcode - 62不同路径

62 不同路径来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/unique-paths著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。题目描述示例 1:输入: m = 3, n = 2输出: 3解释:从左上角开始,总共有 3 条路径可以到达右下角。1. 向右 -> 向右 -> 向下2. 向...

2019-06-16 13:04:15 87

原创 Leetcode - 236二叉树的最近公共祖先

236 二叉树的最近公共祖先来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/lowest-common-ancestor-of-a-binary-tree著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。题目描述示例 1:输入: root = [3,5,1,6,2,0,8,null,null,7,4], p = ...

2019-06-16 12:31:29 122

空空如也

空空如也

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

TA关注的人

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