羊驼儿
码龄6年
关注
提问 私信
  • 博客:178,569
    178,569
    总访问量
  • 98
    原创
  • 2,227,561
    排名
  • 72
    粉丝
  • 0
    铁粉

个人简介:菜鸟上路

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:陕西省
  • 加入CSDN时间: 2019-03-29
博客简介:

qq_44851228的博客

查看详细资料
个人成就
  • 获得152次点赞
  • 内容获得29次评论
  • 获得646次收藏
  • 代码片获得531次分享
创作历程
  • 43篇
    2021年
  • 45篇
    2020年
  • 10篇
    2019年
成就勋章
TA的专栏
  • mysql
    2篇
  • 网络
    8篇
  • Linux
    29篇
  • 笔记
  • 数据结构
    10篇
  • 软件测试
    10篇
  • 题解思路
    18篇
  • C++
    24篇
  • C语言
    17篇
  • 系统管理
    2篇
兴趣领域 设置
  • 测试
    selenium测试用例postman
创作活动更多

HarmonyOS开发者社区有奖征文来啦!

用文字记录下您与HarmonyOS的故事。参与活动,还有机会赢奖,快来加入我们吧!

0人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

mysql:基本的操作

学习数据库之前我们需要先了解以下几个知识:mysql 服务端与数据库的关系,数据库与表的关系;mysql 客户端和服务端的关系我们一般谈起mysql时我们常常会说我们安装了一个mysql数据库,但其实它是一个mysql数据库的服务端(其实就是一段程序),在mysql服务端程序下管理了很多个不同的数据库。其中mysqld就是mysql的服务端,数据库的本质就是存储,那么就会涉及到磁盘的存储,他所有的数据库都会存储在/var/lib/mysql在此路径中一个数据库包含数据库表,相当于文件夹包
原创
发布博客 2021.07.25 ·
463 阅读 ·
0 点赞 ·
2 评论 ·
1 收藏

网络:叮 这里有一份post和get请求区别 请注意查收

HTTP协议中post和方法的区别Http协议是应用层的网络协议,协议约束了网页的服务端和客户端的通信我们在学习Http协议时
原创
发布博客 2021.04.25 ·
252 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

软件测试:怎样编写一个测试用例

在之前的文章中有介绍关于测试用例的编写方法,那我们该如何去编写一个好的测试用例呢?我们先来回顾一下测试用例相关的知识~测试用例所包含的内容:用例编号、用例名称、测试背景、前置条件、优先级、重要级、测试数据、测试步骤、预期结果、实际结果、备注。测试用例的编写流程:需求分析->提取测试点->测试用例编写->测试用例评审测试用例篇编写测试用例整理分析需求文档分析各个模块的功能,列出主要的测试点编写具体的测试用例我们对一个具体的事物的测试用例时主要从以下几个方面去考虑:
原创
发布博客 2021.04.19 ·
1807 阅读 ·
0 点赞 ·
0 评论 ·
8 收藏

软件测试:自动化测试工具selenium

自动化测试工具selenium自动化测试selenium工具特点版本Webdriver常用的API元素的定位自动化测试  自动化测试是指软件测试的自动化,再预设的状态下运行应用程序或者系统,预设条件下包括正常和异常,最后评估运行结果,将认为驱动的测试行为转化为机器执行的过程。常见的自动化测试工具有:QTP、selenium、Rational Robot、jmeter、appium、Loadrunner等等。我们经常使用selenium工具帮助我们完成自动测试,相比起其他工具,它有着不少的优势。这
原创
发布博客 2021.04.18 ·
1606 阅读 ·
12 点赞 ·
4 评论 ·
53 收藏

mysql:关于安装mariadb

安装在学习MySQL的相关知识前,最重要的当然是我们环境的搭建MySQL和mariadb它们两者在使用是功能都是相同的这里我们先来安装一下mariadb:使用命令:rpm -qa | grep mariadb查看当前路径下是否进行了安装(这里已经完成了安装)安装命令:yum install mariadb-serveryum install mariadbyum install mariadb-devel启动:service mariadb start停止:service mariad
原创
发布博客 2021.05.15 ·
500 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Linux:关于死锁

概念  死锁是至在一组进程中的各个进程都占有不会释放的资源,但因为它们都在申请被其他进程所占用不会释放的资源,就将处于一种永久等待的状态。原因产生的原因可以主要分为以下两点:竞争资源系统中的资源大致分为了两类:可剥夺和不可剥夺资源,当通讯顺序不当时就会发生死锁进程间顺序非法进程被占用而阻塞于是进程就产生了死锁死锁的四个必要条件互斥条件:一个资源每次只能被一个执行流所使用请求与保持条件:一个执行流因为请求资源而阻塞时,对已获得的资源保持不放;不可剥夺条件:一个执行流已获得的资源,
原创
发布博客 2021.04.14 ·
183 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Linux:线程和进程的区别,新鲜出炉啦~

线程和进程概念进程的优缺点线程的优缺点区别怎样理解进程和线程的并发性什么时候会用到多线程  在比较线程和进程之间有什么区别前,我们先来一起回顾一下线程和进程的相关概念和特点。概念进程:一个在内存中运行的程序。每个进程都有自己独立的一块内存空间,进程是操作系统进行资源分配的基本单元。线程:线程是进程中的一条执行流,是CPU调度的基本单元,在Linyx中这个线程的执行流通过pcb实现。一个进程至少有一个线程,一个进程可以运行多个线程,多个线程可以进行共享数据。如果还是觉得难以理解,我们看看它的抽
原创
发布博客 2021.04.14 ·
247 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Linux:动态查看错误日志信息

  当程序出现错误难以定位问题的时候,可以查看错误日志解决相关的问题,可以在错误日志目录下执行命令tail -f 文件名即可动态查看日志的内容tail -f a.out |grep -C 36 ERROR该命令实时读取日志文件,把出现“ERROR”行的日志前后各36日志打印出来。我们也可以把日志记录到文本中:tail -f a.out |grep -C 36 ERROR >>error.log如果日志在更新,如何实时查看 tail -f /var/log/messages
原创
发布博客 2021.04.13 ·
6760 阅读 ·
4 点赞 ·
0 评论 ·
30 收藏

网络:HTTP状态码及出错的原因

  之前在博客中介绍了HTTP状态码相关内容,这篇文章主要是针对常见的几种错误码的原因以及相关的场景进行探究。博客链接我们在访问一个网页时经常会遇到400、404、500这样的错误页面。我们了解4xx是客户端错误,5xx服务器错误,而客户端错误,往往是由于客户端引起的某些错误进行导致的,(如:Web浏览器、URL命令、postman等服务器发出的请求)而服务器错误,是服务器发生了错误或者服务器识别出无法处理的请求时,将发送500-599的错误状态码400页面400错误页面一般为网站服务器资源
原创
发布博客 2021.04.12 ·
1398 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

C++:合并两个有序数组

题目描述:给你两个有序整数数组 nums1 和 nums2,请你将 nums2 合并到 nums1 中,使 nums1 成为一个有序数组。初始化 nums1 和 nums2 的元素数量分别为 m 和 n 。你可以假设 nums1 的空间大小等于 m + n,这样它就有足够的空间保存来自 nums2 的元素。示例 1:输入:nums1 = [1,2,3,0,0,0], m = 3, nums2 = [2,5,6], n = 3输出:[1,2,2,3,5,6]示例 2:输入:nums1
原创
发布博客 2021.04.11 ·
6254 阅读 ·
2 点赞 ·
0 评论 ·
12 收藏

C++:删除有序数组中的重复项

题目描述:给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。示例 1:输入:nums = [1,1,2]输出:2, nums = [1,2]解释:函数应该返回新的长度 2 ,并且原数组 nums 的前两个元素被修改为 1, 2 。不需要考虑数组中超出新长度后面的元素。示例 2:输入:nums = [0,0,1,1,1,2,2,3,
原创
发布博客 2021.04.11 ·
634 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

C++:移除元素

题目描述:给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。说明:为什么返回数值是整数,但输出的答案是数组呢?请注意,输入数组是以「引用」方式传递的,这意味着在函数里修改输入数组对于调用者是可见的。你可以想象内部操作如下:// nums 是以“引用”方式传递的。也就是说,不对实参作任
原创
发布博客 2021.04.11 ·
203 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

网络:HTTP状态码

  当我们访问一个网页时,浏览器会向网页所在服务器发出请求。当浏览器接收并显示网页前,此网页所在的服务器会返回一个包含HTTP状态码的信息头(server header)用以响应浏览器的请求。HTTP状态码的五种类型类别出现原因1XX信息状态码接收的请求正在处理2XX成功状态码请求正常处理完毕3XX重定向状态码需要进行附加操作才能完成请求4XX客户端错误状态码服务器无法处理请求5XX服务器错误状态码服务器处理请求错误下面是常见状态码
原创
发布博客 2021.04.09 ·
151 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

网络:TCP/UDP协议一篇就搞懂

目录再谈传输层TCP的基本认识1.TCP的头格式2.为什么需要TCP协议3.什么是TCP连接,如何确立4.TCP的最大连接数UDP和TCP1.UDP头部格式2.UDP特点3.UDP的缓冲区4.TCP/UDP区别及应用场景  TCP和UDP协议是我们经常使用到的协议,关于网络协议这一方面理解起来较为抽象复杂,这两个协议其实都属于传输层协议,但是它们之前的区别与联系却暗含了很多的知识点,关于TCP和UDP编程可以参考之前的博客链接,这篇文章梳理了相关的知识点,图片来源于大佬分享的一篇文章,原文在这里再谈传输
原创
发布博客 2021.04.02 ·
1662 阅读 ·
0 点赞 ·
0 评论 ·
3 收藏

高频:怎样理解三次握手和四次挥手,详解请猛戳这里~

TCP三次握手和四次挥手TCP的连接建立1.TCP三次握手过程和状态转换过程2.查看TCP状态的方法3.为什么是三次握手4.为什么客户端和服务端的初始序列号ISN是不相同的5.初始序列号ISN怎样产生6.TCP层需要MSS的原因7.SYN攻击及避免SYN的方式TCP的连接断开1.TCP四次挥手和状态转换过程2.为什么是四次挥手3.为什么TIME_WAIT等待的时间是2MSL4.为什么需要TIME_WAIT状态5.TIME_WAIT过多有什么危害6.优化TIME_WAIT的方式7.建立连接后客户端出现故障的解
原创
发布博客 2021.04.08 ·
402 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

C++:青蛙跳台阶问题

题目描述:一只青蛙一次可以跳上1级台阶,也可以跳上2级台阶。求该青蛙跳上一个 n 级的台阶总共有多少种跳法。答案需要取模 1e9+7(1000000007),如计算初始结果为:1000000008,请返回 1。示例 1:输入:n = 2输出:2示例 2:输入:n = 7输出:21示例 3:输入:n = 0输出:1提示:0 <= n <= 100力扣题目链接点这里题目分析这种题目一般多少都会用到递归的思想,根据题目我们进行分析:设跳上台阶共有f(n)种方法
原创
发布博客 2021.04.02 ·
2524 阅读 ·
1 点赞 ·
1 评论 ·
5 收藏

我是真的不会写二分呀——二分查找详解!!!

  二分查找算法我们会经常对它进行应用以及拓展,但它看起来很简单,实则漏洞状况百出,编写二分查找的算法就很迷惑,云里雾里,不要着急,看完这篇,立马干掉这个难题。二分查找1.概念二分查找是查找算法的一种,它又被称为折半查找,适用于有序数组中的查找。我们在平常进行查找时最通用的方法就是:对数组进行遍历,依次比较每个元素(即顺序查找)。二分查找对其进行优化,将每次的比较查找范围缩小了一半。2.算法思想二分查找就是将查找的的元素和子数组的中间值进行比较,如果查找元素小于中间值,就在左子数组中继续查找;如
原创
发布博客 2021.04.01 ·
203 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

旋转数组的最小数字

旋转数组的最小数字题目描述:把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个递增排序的数组的一个旋转,输出旋转数组的最小元素。例如,数组 [3,4,5,1,2] 为 [1,2,3,4,5] 的一个旋转,该数组的最小值为1。示例 1:输入:[3,4,5,1,2]输出:1示例 2:输入:[2,2,2,0,1]输出:0题目链接点这里方法一:class Solution {public: int minArray(vector<int>&
原创
发布博客 2021.04.01 ·
102 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

C++:从尾到头打印链表

题目描述:输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)示例 1:输入:head = [1,3,2]输出:[2,3,1]限制:0 <= 链表长度 <= 10000方法一:遍历链表从尾到头依次输出class Solution {public: vector<int> reversePrint(ListNode* head) { vector<int> array; ListNode*
原创
发布博客 2021.03.31 ·
358 阅读 ·
2 点赞 ·
0 评论 ·
0 收藏

如何进行数据的抓包

抓包抓包就是对网络传输中发送与接收的数据包进行截获、重发、编辑、转存等操作。前提:抓取的数据包是从网卡设备中进行抓取的;winwiresharkLinuxtcpdump从上图我们就可以了解到tcpdump就是我们使用的一个工具;我们在使用它时有一个万能公式:tcpdump -i any port [端口] -s 0 -w 文件名一定是在root用户下进行抓包的哦...
原创
发布博客 2021.03.26 ·
2919 阅读 ·
0 点赞 ·
0 评论 ·
4 收藏
加载更多