- 博客(93)
- 收藏
- 关注
原创 Postman的使用指导
因为自己是第一次使用这个工具,也不熟悉,所以记录下从小白开始的一个使用过程首先呢这个软件是可用于发送网络http请求的,根据自己的目的自行构建。Postman这最开始是属于chrome的一个插件,之后在18年chrome停止了对Postman应用程序的支持,所以就很多postman插件可能不能正常使用。建议直接到官网下载postman应用程序进行使用 附上官网链接????Postman注意看自己的系统版本,别下载错了下载之后双击安装,无脑下一步就可以安装完成之后打开它先看下这个的基础功能
2020-12-01 21:13:48
1000
原创 当你在浏览器输入baidu.com并敲下回车发生了什么
当你在浏览器输入baidu.com并敲下回车发生了什么?当我们在浏览器输入一个网站的时候,浏览器会先去查缓存数据,缓存是什么?比如你访问了百度,然后浏览器把百度的网页缓存到了硬盘或者内存中,第二次访问的时候,如果有缓存数据,浏览器会直接从缓存中提取网页数据展示给用户。最普遍的例子就是登陆,很多网站都有这样一个功能,输入密码登陆一个网站后,第二次不需要输入密码就能进入实际上也是依靠缓存。...
2020-03-15 08:41:35
974
原创 C++中的find函数
我们在C++中使用的find函数一般都是algorithm库里面提供的或者是STL容器里面的find函数。今天就来总结一下他们的使用与区别添加链接描述1. 容器里面的find函数STL里面容器除了vector其他常见的容器都有自己实现成员函数find,例如string中的find函数,string的find()函数用于找出字母在字符串中的位置。函数原型如下://(1)size_t...
2020-03-07 14:47:25
6502
原创 指针定义时的初始化问题
一直说指针不初始化就会引发野指针问题,但是在比较指针和引用的区别的时候也说,引用定义的时候必须初始化,指针可以不用。前者的说法没有问题,后者也没有问题,具体详解如下:首先,未初始化的指针可以称为野指针,(但是野指针并不仅仅是未初始化的指针. 一般来说,野指针指向的是内存中无效的对象),但是在定义的时候也可以不初始化,只要你在使用之前将它初始化即可,不一定是要在定义的时候,也就是说你要保证在使用的...
2020-03-05 14:28:22
3308
原创 C语言中的const
最近在复习C语言,就来说说关于我以前才开始学C语言很迷糊的一个知识点:const关键字const关键字是用来定义只读变量的,说 const 定义的是变量,但又相当于常量;说它定义的是常量,但又有变量的属性,所以可以叫常变量。用 const 定义常变量的方法很简单,就是在定义变量时前面加 const 即可,如下:const int a=2;//语句1int const b=5;//语句2以...
2020-03-02 17:06:56
263
2
原创 Git简单命令使用总结
最近看了一个学习Github系列的文档,自己其实也不是很熟悉,所以总结一下git相关操作命令,有助于自己的记忆和以后的查阅。(在进行git命令之前先进入到Git库文件目录下)git init意思是初始化当前的这个git库。git status意思就是查看当前这个git库的状态。git add +文件名意思是预提交到库,实际上这里是放到了暂存区或者说是缓冲区,并没有真正提交到库,为了防...
2020-02-25 14:31:30
173
原创 模拟实现Web服务器
因为最近想对HTTP协议里面的操作细节有更深层更详细的的理解,就自己模拟实现了一个基于HTTP协议的Web服务器。我所的开发环境是Linux,Centos7,Vim,g++。.设计思路:1.首先http协议是基于TCP通信的,所以我们得先实现TCP通信(socket编程通信)。2.当通信建立好了之后,客户端可以向服务端发起请求,客户端可以使用GET,POST方法请求资源。因为将来可能同时有很...
2019-12-19 11:31:39
864
原创 另类加法(牛客网)
(编程题)请编写一个函数,将两个数字相加。不得使用+或其他算数运算符。给定两个int A和B。请返回A+B的值测试样例:1,2返回:3既然要求不能用算数运算符,那就考虑哈位运算符,举个栗子????: 1 ^1=0 1 ^0=1 0 ^0=0(这是异或) 1 +1=0 1+0=1 0+0=0(这是加),然后你就会发现这两种结果一致,不但如此,&运算和‘进位’结果一致,我们知道A...
2019-11-14 21:59:30
251
原创 字符串中找出连续最长的数字串
(这个博客是一个带有情绪的博客,本来这个题就是一个正常的题,但是想不到啊,我栽了!在牛客网上只能通过百分之六十多,我真的好迷啊,找了半天问题也没找到,结果…是多组测试的问题,越想越气,可能也是我没看懂输入描述,但是还是好气Q^Q呜呜呜呜呜呜呜呜呜呜)题意:读入一个字符串str,输出字符串str中的连续最长的数字串#include<iostream>#include<str...
2019-11-08 15:54:11
171
原创 求两个数的二进制中有多少个位不同?
这是之前遇到的题,整理一下:)题意:两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同?输入例子: 1999 2299 输出例子:7 思路:先想想这个问题,求得是有多少个bit位不同,是不是很熟?所以是不是想起要用异或(^)解决。先异或,再求异或结果中有多少个一,前面博客有仔细写过这个方法https://blog.youkuaiyun.com/zd18729850297/art...
2019-10-29 12:19:20
386
原创 简单的扫雷程序
之前实现过简单的扫雷程序,今天想起来总结一哈:这里实现的和电脑上的扫雷规则玩法几乎一致,简单介绍一哈扫雷的规则,扫雷就是要把所有非地雷的格子点开即胜利。踩到地雷格子就算失败。游戏区域由很多个方格组成。随机点击一个方格,方格即被打开并显示出方格中的数字,方格中数字则表示其周围的8个方格隐藏了几颗雷。首先给出一个游戏菜单,给出一个二维数组,比如就叫A数组,A数组布置雷的,你可以设定位置上数字为0是...
2019-10-28 23:04:04
379
原创 验证回文串
来源:力扣(LeetCode)题目:给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。我们将空字符串定义为有效的回文串。示例 1:输入: "A man, a plan, a canal: Panama"输出: true示例 2:输入: "race a car"输出: false大致思路就是把字符串的第一个字母字符和最后一个字母字符作比较,符合则...
2019-10-22 20:36:57
304
原创 判断闰年
关于判断闰年常见的题目:一种是输入一个年数,判断这个年数是否是闰年。还有一种,输入两个数,输出这两个数区间内所有的闰年。在数学中,我们如何判定一个年数是不是闰年呢?如果这个数既是100的倍数又是4的倍数(即可以整除400),或者不是100的倍数但却是4的倍数,符合这两种情况该年数即可判断为闰年。就直接上代码了:输入一个年数,判断这个年数是否是闰年#include<stdio.h>...
2019-10-21 12:39:06
2320
原创 基于Tcp实现简单网络英译汉功能
这里就实现简单英译汉的功能(手动翻译嘻嘻嘻嘻,勿怪),既然需要把单词和翻译一一对应起来,这里就可以接需要借用map容器。搭建服务器端与客户端,然后让其进行通信(这里用Tcp)。接下来就直接上代码:服务端:Server.cc#include<iostream>#include<map>#include<unistd.h>#include<stri...
2019-10-18 20:09:43
241
原创 基于TCP实现简单网络计算器
这里我们需要简单实现网络版的计算器,我打算让它具有计算加法,减法,乘法,除法,还有取模 的功能。例如(加法),我们需要实现一个服务器版的加法器,我们需要客户端把要计算的两个加数发过去,然后由服务端进行计算,最后把计算结果返回给客户端。按照这个思路,客户端每次应该发送两个加数和一个操作符,如果要把这些数据分三次发送或者两次发送,在一个服务端对应多个客户端的时候,数据就会混乱,便于避免,我们应该一...
2019-10-17 13:05:06
1110
原创 杨辉三角II
来源:力扣(LeetCode)题意:给定一个非负索引 k,其中 k ≤ 33,返回杨辉三角的第 k 行。在杨辉三角中,每个数是它左上方和右上方的数的和。示例:输入: 3输出: [1,3,3,1] vector<int> getRow(int rowIndex) { vector<vector<int>> arr(rowIndex+...
2019-09-29 19:12:44
171
原创 Vim中的大量注释和替换
主要是自己老是记不清,但是用起来确实很方便,便用博客记录一哈:)在Vim中如何大量注释?你得先切换到 (按ESC键)命令模式 然后按 Ctrl+V,这时候你就会发现最下面出现可视块(列模式),如下图接下来,你可以用键盘上的上下左右键选择你要注释的多行,然后进入插入模式(i键),输入注释符//,然后不要慌,按下ESC键就完成多行注释了(按完之后可能不会立即注释掉,等几秒)。在Vim中如何大...
2019-09-29 16:53:58
222
原创 杨辉三角
来源:力扣(LeetCode)题目:给定一个非负整数 numRows(行数),生成杨辉三角的前 numRows 行。在杨辉三角中,每个数是它左上方和右上方的数的和。示例:输入: 5输出:[ [1], [1,1], [1,2,1], [1,3,3,1], [1,4,6,4,1]]简单题解:看着杨辉三角你就会发现,每行的第一列和最后一列(行数等于列数)的...
2019-09-28 11:12:49
255
原创 Linux环形队列简单实现
这里的指的环形队列是在逻辑上,而在物理上是采用数组模拟的,这点必须理解。我这里实现的是单生产单消费模型。这里用信号量实现计数器的功能。如果之前对信号量了解不多,我这里简单提一下,这里的信号量是用于同步操作,达到无冲突的访问共享的目的。建立一个信号量必须说明此信号量所代表的意义并且赋初值。除赋初值外,信号量仅能通过PV操作来访问。#include<iostream>#include...
2019-09-23 22:07:03
639
原创 路径总和
来源:力扣(LeetCode)给定一个二叉树和一个目标和,判断该树中是否存在根节点到叶子节点的路径,这条路径上所有节点值相加等于目标和。叶子节点是指没有子节点的节点。示例: 给定如下二叉树,以及目标和 sum = 22, 5 / \ 4 8 / / \ 11 13...
2019-09-17 18:23:30
129
原创 付费智力题
题目:你让工人为你工作7天,给工人的回报是一根金条。金条平分成相连的7段,你必须在每天结束的时候给他们一段金条,如果只许你两次把金条弄断,你如何给你的工人付费?(内心os:什么奇怪的条件哈哈哈哈哈哈)正经题解:第一天:你切出1段金条(第一次弄断金条)给工人第二天:你从剩余的金条中切出2段金条(第二次弄断金条),然后你让工人把昨天的1段金条给你,你直接给他2段金条。此时,你这里有一个4段金条...
2019-08-23 13:32:42
304
原创 数字智力题
用数字5,5,5,1,进行四则运算,每个数字当且仅当使用一次,要求运算结果值为24.用数字 5.5.5.1=24可以这样来5*(5-1÷5)=24
2019-08-23 12:41:51
395
原创 关于宏替换的一道可爱小题
下面程序运行后的输出结果是__ #define F(X,Y)((X)+(Y)) int main() { int a=3, b=4; printf("%d\n", F(a++, ++b)); } A.7 B.8 C.9 D.10正确答案:A本题主要考查宏的定义与替换。在编译预处理时,对程序中所有...
2019-08-23 10:57:38
460
2
原创 define与typedef
今天遇到一个有关于define和typedef的题,如下。一个test.c文件中包含如下语句:#define INT_PTR int *typedef int* int_ptr;INT_PTR a,b;int_ptr c,d;问:文件中定义的四个变量,哪个变量不是指针类型_b__.解释:#define INT_PTR int* 这是宏定义,编译预处理阶段要进行宏替换,这个替换时...
2019-08-09 13:00:13
456
原创 二叉树的最小深度
来源:力扣(LeetCode)题目:给定一个二叉树,找出其最小深度。最小深度是从根节点到最近叶子节点的最短路径上的节点数量。说明: 叶子节点是指没有子节点的节点。示例:给定二叉树 [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回它的最小深度 2.大致思路:看到有关二叉树的深度,首先想到了递归。遇到...
2019-08-06 19:48:50
210
原创 将有序数组转换为二叉搜索树
来源:力扣(LeetCode)将一个按照升序排列的有序数组,转换为一棵高度平衡二叉搜索树。本题中,一个高度平衡二叉树是指一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1。示例:给定有序数组: [-10,-3,0,5,9],一个可能的答案是:[0,-3,9,-10,null,5],它可以表示下面这个高度平衡二叉搜索树: 0 / \ -3 9...
2019-08-05 19:27:25
166
原创 二叉树的层次遍历
来源:力扣(LeetCode)题目:给定一个二叉树,返回其节点值自底向上的层次遍历。 (即按从叶子节点所在层到根节点所在的层,逐层从左向右遍历)示例:给定二叉树 [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回其自底向上的层次遍历为:[ [15,7], [9,20], [3]]大致思路...
2019-08-05 15:24:07
153
原创 Linux下的编译器gcc的使用
首先了解编译器在对代码编译的时候有以下的阶段1.预处理(进行宏替换)2. 编译(生成汇编)3. 汇编(生成机器可识别代码,也就是编译成目标文件)4. 连接(生成可执行文件或库文件)假设我写了一个test.c文件,示例:第一阶段:gcc -E test.c -o test.i第二阶段:gcc -S test.i –o test.s第三阶段:gcc –c test.s –o test....
2019-08-05 12:16:07
281
原创 对称二叉树
来源:力扣(LeetCode)题目:给定一个二叉树,检查它是否是镜像对称的。例如,二叉树 [1,2,2,3,4,4,3] 是对称的。 1 / \ 2 2 / \ / \3 4 4 3但是下面这个 [1,2,2,null,3,null,3] 则不是镜像对称的: 1 / \ 2 2 \ \ 3 3题目不难,直接上...
2019-08-04 17:57:31
114
原创 相同的树
来源:力扣(LeetCode)题目:给定两个二叉树,编写一个函数来检验它们是否相同。如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。示例 1:输入: 1 1 / \ / \ 2 3 2 3 [1,2,3], [1,2,3]输出: true示例 2:...
2019-08-04 16:25:57
122
原创 删除排序链表中的重复元素
来源:力扣(LeetCode)题目:给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。示例 1:输入: 1->1->2输出: 1->2示例 2:输入: 1->1->2->3->3输出: 1->2->3大致思路:就很直接,找在当前节点后面第一个与当前节点值不相同的节点,链接在当前节点后面,记得要保留head的值,...
2019-08-04 14:26:14
107
原创 爬楼梯
来源:力扣(LeetCode)题目:假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?注意:给定 n 是一个正整数。示例 1:输入: 2输出: 2解释: 有两种方法可以爬到楼顶。1. 1 阶 + 1 阶2. 2 阶示例 2:输入: 3输出: 3解释: 有三种方法可以爬到楼顶。1. 1 阶 + 1 阶...
2019-08-04 12:22:22
105
原创 x的平方根
来源:力扣(LeetCode)题目:实现 int sqrt(int x) 函数。计算并返回 x 的平方根,其中 x 是非负整数。由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去。示例 1:输入: 4输出: 2示例 2:输入: 8输出: 2说明: 8 的平方根是 2.82842..., 由于返回类型是整数,小数部分将被舍去。方法一:题目简单就直接上代码:...
2019-08-04 11:34:05
137
原创 二进制求和
来源:力扣(LeetCode)给定两个二进制字符串,返回他们的和(用二进制表示)。输入为非空字符串且只包含数字 1 和 0。示例 1:输入: a = "11", b = "1"输出: "100"示例 2:输入: a = "1010", b = "1011"输出: "10101"二进制进位,怎么想的就怎么写,直接上代码:class Solution {public: ...
2019-08-03 18:46:09
109
原创 最大子序和
来源:力扣(LeetCode)给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。示例:输入: [-2,1,-3,4,-1,2,1,-5,4],输出: 6解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。看到一个特别有意思的题意解释(超级有趣的灵魂哈哈哈哈)。大致是这么说的,就好比你现在在赌钱,数组里面的数字就是你对应每一天...
2019-08-03 15:51:32
97
原创 搜索插入位置
来源:力扣(LeetCode)给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。假设数组中无重复元素。示例 1:输入: [1,3,5,6], 5输出: 2示例 2:输入: [1,3,5,6], 2输出: 1示例 3:输入: [1,3,5,6], 7输出: 4示例 4:输入: [1,3,5,6], 0...
2019-08-03 15:13:25
124
原创 删除排序数组中的重复项
来源:力扣(LeetCode)题意:给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。示例 1:给定数组 nums = [1,1,2], 函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。 你不需要考虑数组中超出...
2019-08-02 17:56:43
143
原创 有效的括号
刷题来源:力扣(LeetCode)题意:给定一个只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。示例 1:输入: "()"输出: true示例 2:输入: "()[]{}"输出: true示例 3:输入: "(]"输...
2019-08-02 17:04:05
164
原创 整数反转
(在LeetCode刷到的)链接:https://leetcode-cn.com/problems/reverse-integer/题意:给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。输入:123返回:321输入:-456返回:-654假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为 [−231, 231 − 1]。请根据这个假设,如果反转...
2019-08-01 18:53:09
193
原创 Linux下wait函数和waitpid函数的使用和总结
进程等待的方法有wait方法和waitpid方法。这里了解一下函数的使用,头文件包含以及函数原型,以及返回值等等。wait函数#include<sys/types.h>#include<sys/wait.h>pid_t wait(int *status);//该函数的参数为输出型参数,该参数可以获得被等待进程的退出状态信息,并把该信息带出//返回值:失败返回-...
2019-08-01 17:29:30
1048
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人